Error[8]: Undefined offset: 6, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

概述什么是最好的表现方式,在正则表达式中,否定多个单词和构成这些单词的字符的排列? 例如:我不想要 "zero dollar""roze dollar""eroz dollar""one dollar""noe dollar""oen dollar" 但我确实想要 "thousand dollar""million dollar""trillion dollar" 如果我写 not m/ 什么是最好的表现方式,在正则表达式中,否定多个单词和构成这些单词的字符的排列?

例如:我不想要

"zero dollar""roze dollar""eroz dollar""one dollar""noe dollar""oen dollar"

但我确实想要

"thousand dollar""million dollar""trillion dollar"

如果我写

not m/ [one | zero] \s dollar /

它不会匹配字符的排列,而外部的“非”功能会使正则表达式与正则表达式中没有“美元”的“大爆炸”相匹配.

m/ <- [one] | [zero] > \s dollar/ # this is Syntax error.

非常感谢你 !

lisprog

解决方法 使用代码断言:

您可以匹配任何字词,然后使用<!{}>主张拒绝“一”或“零”排列的词:

say "two dollar" ~~ / :s ^ (\w+) <!{ 
my @disallowed = <one zero>.map(|*.comb.permutations)».join.unique;say "two dollar" ~~ / :s ^ <!before @disallowed>\w+ dollar $/;say "two dollar" ~~ / :s ^ \w+<!after @disallowed> dollar $/;
.comb.sort.join eq "eno" | "eorz" }> dollar $/;

使用之前/之后:

或者,您可以预先生成不允许的单词的所有排列,然后使用<!before>之前拒绝它们.或<!after>正则表达式中的断言:

[+++] 总结

以上是内存溢出为你收集整理的perl6在正则表达式中否定其字符的多个单词和排列全部内容,希望文章能够帮你解决perl6在正则表达式中否定其字符的多个单词和排列所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
perl6在正则表达式中否定其字符的多个单词和排列_语言综合_内存溢出

perl6在正则表达式中否定其字符的多个单词和排列

perl6在正则表达式中否定其字符的多个单词和排列,第1张

概述什么是最好的表现方式,在正则表达式中,否定多个单词和构成这些单词的字符的排列? 例如:我不想要 "zero dollar""roze dollar""eroz dollar""one dollar""noe dollar""oen dollar" 但我确实想要 "thousand dollar""million dollar""trillion dollar" 如果我写 not m/ 什么是最好的表现方式,在正则表达式中,否定多个单词和构成这些单词的字符的排列?

例如:我不想要

"zero dollar""roze dollar""eroz dollar""one dollar""noe dollar""oen dollar"

但我确实想要

"thousand dollar""million dollar""trillion dollar"

如果我写

not m/ [one | zero] \s dollar /

它不会匹配字符的排列,而外部的“非”功能会使正则表达式与正则表达式中没有“美元”的“大爆炸”相匹配.

m/ <- [one] | [zero] > \s dollar/ # this is Syntax error.

非常感谢你 !

lisprog

解决方法 使用代码断言:

您可以匹配任何字词,然后使用<!{}>主张拒绝“一”或“零”排列的词:

say "two dollar" ~~ / :s ^ (\w+) <!{ 
my @disallowed = <one zero>.map(|*.comb.permutations)».join.unique;say "two dollar" ~~ / :s ^ <!before @disallowed>\w+ dollar $/;say "two dollar" ~~ / :s ^ \w+<!after @disallowed> dollar $/;
.comb.sort.join eq "eno" | "eorz" }> dollar $/;

使用之前/之后:

或者,您可以预先生成不允许的单词的所有排列,然后使用<!before>之前拒绝它们.或<!after>正则表达式中的断言:

总结

以上是内存溢出为你收集整理的perl6在正则表达式中否定其字符的多个单词和排列全部内容,希望文章能够帮你解决perl6在正则表达式中否定其字符的多个单词和排列所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/langs/1265833.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存