[英]Match text after colon
我想在“ type:”之后匹配单词。
我有的?
我的实际模式 :(?<= type \\ s:\\ s)(\\ w *)
文字 :“类型:文字”
当我在颜色之前/之后只有一个空格时,它完全可以按我的要求工作...
“ type_SPACE _:_ SPACE_text
但是,如果我有2个空格或全无,则无法使用。
我已经尝试过了,但是不匹配。 (?<=类型\\ s *:\\ s *)(\\ w *)
另外,我尝试使用这种最佳方法。 但是与此匹配的文本包含冒号。
(?<=类型)(\\ s *):(\\ s *)(。*)(?=,)
要进行测试,我使用gskinner的测试仪... http://gskinner.com/RegExr/
如果您使用C#并使用随附的Regex引擎进行此操作,则只需稍作修改即可使用原始的正则表达式:
string myString = "type : something";
var match = Regex.Match(myString, @"(?<=type\s*:\s*)\w+");
Console.Write(match);
编辑:为什么?<=type\\s*:\\s*)\\w*
版本不适用于多个空格,是因为正则表达式匹配很高兴在变量后返回带有0个字符的字符串的各种组合冒号后面的空格数。
您可以使用Regex.Matches
查看各种匹配的字符串,您会看到匹配的单词在其中,但这并不是第一个结果。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.