关于正则匹配不能什么单词开头或者不能以什么结尾结尾

时间:2022-12-18 17:07:03
string input = "unite one unethical ethics use untie tun ultimate adnoun antigun begun blowgun bosun one three four five ";

不能以un开头string pattern = @"\b(?!un)\w+\b";可以,但是不能以un结尾string pattern = @"\b\w+(?!un)\b";为什么反过来写不能匹配不能以un结尾的单词呢?那么要怎样写才能匹配呢?请各位大神帮忙!!!谢谢

5 个解决方案

#1


\w+后面加上问号,否则贪婪匹配了

#2


引用 1 楼 caozhy 的回复:
\w+后面加上问号,否则贪婪匹配了

加了也是一样,怎么匹配不是以un结尾的单词啊

#3


环视
\b(?!un)\w+(?<!un)\b
关于正则匹配不能什么单词开头或者不能以什么结尾结尾

#4


Not start with `un` : 
 ^(?!un).+


Not endwith `un` : 
.+(?<!un)$

#5


@兔子党-督察  @xuzuning  谢谢你们为我回答问题,还问一个问题? 假如一个单词包含2个字母o就不匹配,少于2个大于2个就匹配怎样写

#1


\w+后面加上问号,否则贪婪匹配了

#2


引用 1 楼 caozhy 的回复:
\w+后面加上问号,否则贪婪匹配了

加了也是一样,怎么匹配不是以un结尾的单词啊

#3


环视
\b(?!un)\w+(?<!un)\b
关于正则匹配不能什么单词开头或者不能以什么结尾结尾

#4


Not start with `un` : 
 ^(?!un).+


Not endwith `un` : 
.+(?<!un)$

#5


@兔子党-督察  @xuzuning  谢谢你们为我回答问题,还问一个问题? 假如一个单词包含2个字母o就不匹配,少于2个大于2个就匹配怎样写