Browse Source

Add combine word function.

Wrote test code in script.
master
Craig Oates 6 years ago
parent
commit
e60e612a24
  1. 10
      WetPancake/DataProcessing.fs
  2. 20
      WetPancake/Script.fsx

10
WetPancake/DataProcessing.fs

@ -2,12 +2,13 @@
open System.Text.RegularExpressions
open DataCleaning
open System
let MatchText pattern text = Regex.IsMatch(text, pattern)
let ConcatToString words = String.concat " " words
let SortIntoWordPairs pairSize text =
let SortIntoPairs pairSize text =
SplitText @"\s+" text // Splits text where there is a space.
|> Seq.windowed pairSize
@ -17,4 +18,9 @@
words
|> Seq.take (length - 1)
|> ConcatToString
(start, words.[length - 1])
(start, words.[length - 1])
let CombineWords prev next =
[prev; next]
|> List.filter(fun s -> not (String.IsNullOrWhiteSpace s))
|> ConcatToString

20
WetPancake/Script.fsx

@ -53,8 +53,24 @@ let dp_words =
ConcatToString words
let dp_words2 =
let words = "This is a test. And has serveral words in it."
SortIntoWordPairs 4 words
SortIntoPairs 4 words
|> Seq.toList
let dp_bisect =
let words = [|"This"; "is"; "a"; "test"; "."; "Contains"; "text"; "."|]
BisectWords words
BisectWords words
let dp_combine =
let previous = "This is the previous"
let next = "this is the next"
CombineWords previous next
let dp_combine2 =
let prev = " "
let next = "Prev is whitespace"
CombineWords prev next
let dp_combine3 =
let prev = "Next is empty"
let next = ""
CombineWords prev next
let dp_combine4 =
let prev = "Next is null"
let next = null
CombineWords prev next
Loading…
Cancel
Save