Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
F# 如何打印语句,然后删除F中的项#_F# - Fatal编程技术网

F# 如何打印语句,然后删除F中的项#

F# 如何打印语句,然后删除F中的项#,f#,F#,我有一个在F#中创建的程序。我需要接受一个句子,然后返回句子,说明每个单词/字符的词性和单词/字符。如何读入、匹配Mapstroken并打印出单词/字符和词性 我这里有这个代码: type tokens = Art of string | Noun of string | Adj of string | Adv of string | | Verb of string | Comma of string | Conj of str

我有一个在F#中创建的程序。我需要接受一个句子,然后返回句子,说明每个单词/字符的词性和单词/字符。如何读入、匹配Mapstroken并打印出单词/字符和词性

我这里有这个代码:

type tokens = Art of string | Noun of string | Adj of string 
                | Adv of string |
                | Verb of string | Comma of string | Conj of string
                |Prep of string | EOS of string | NONE;;
let mapStrToken str = 
    match str with
        | "dog" -> Noun str | "cat" -> Noun str | "mouse" -> Noun str | "tree" -> Noun str | "cheese" -> Noun str
        | "a" -> Art str | "the" -> Art str
        | "likes" -> Verb str | "hates" -> Verb str | "eats" -> Verb str | "chases" -> Verb str
        | "," -> Comma str
        | "." -> EOS str | "!" -> EOS str
        | "fast" -> Adj str | "slow" -> Adj str | "furry" -> Adj str | "yellow" -> Adj str
        | "quickly" -> Adv str | "slowly" -> Adv str | "quietly" -> Adv str
        | "and" -> Conj str | "or" -> Conj str
        | "of" -> Prep str | "around" -> Prep str
        | _ -> NONE

不确定这是否是你要问的,但试试这个

let tokenArray = "a fast , yellow dog".Split(' ') |> Array.map mapStrToken 
let doSomethingWithTokens = function
    | [Art; Adj; Comma; Adj; Noun] -> Some("article adjective comma adjective noune")
    | _ -> None
tokenArray |> doSomethingWithtokens

现在还不清楚你的目标是什么,你遇到了什么问题。试着重新表述你的问题,让它更清楚。你想做什么?我怀疑您的用例类似于
“一只快速的黄狗”.split(“”)|>Array.map mapStrToken |>processTokenArray
,但我不知道你对processTokenArray的输出会是什么。我怀疑你在家庭作业问题上寻求帮助,所以给你一点建议:只要你公开,大多数教授都会完全同意你的请求。在代码中添加一条注释,其中提到“我在请求帮助时,此函数来自帮助我的人”(或类似措辞),您应该会没事。根据你教授的政策,如果你不透露,他/她可能会认为这是作弊。当然,如果这不是家庭作业,请忽略此注释。此外,此问题与Visual Studio本身无关,因此我将从问题中删除这些标记。最好用与问题本身相关的标签来标记问题。在这里,您可能使用VS来编写程序,但如果您使用的是不同的IDE,则会遇到相同的问题,因此唯一相关的标记是
f