string patname ="enter pat name";
patname = "text";
patname = " text pat";
嗨,我想使用visual studio的正则表达式在上面的语句中搜索“pat”。我尝试使用Pat{([^a-zA-Z]|$)}
这个,但它也会搜索我真正不想要的第二行。我希望pat在一个字符串值内搜索,该字符串值从“随后的任何字符开始,然后是”pat“。我的意思是pat可以来到任何地方,即在开始,中间或结束。
有人知道怎么做吗?
答案 0 :(得分:2)
所以你想在源代码中的字符串中查找“pat”吗?有一些问题......特别是:
1:处理引号很难(分隔字符串的字面部分而不是变量等) - 特别是有两种类型的转义; @“”“”和“\”“
2:在逐字字符串文字中,pat可以在下一行但仍在字符串中:
string s = @"abc
def pat ghi";
但是,对于粗略搜索,请执行以下操作:
\".+pat
可能有帮助
答案 1 :(得分:0)
应该是这样的:
/.*pat.*/
哪个。表示正则表达式中的wild char,而。*表示任何字符的出现次数
答案 2 :(得分:0)
如何使用字边界?
在Visual Studio中:
<pat>
重新阅读你的问题,你只需要在字符串中“拍”,所以
"[^"]*<pat>[^"]*"
可能是一个更好的表达方式。
答案 3 :(得分:0)
如果我理解正确的正则表达式,那么你正在寻找的只是
\".+\bpat\b
如果您希望找到整行,请使用
.*\".+\bpat\b.*
澄清:\b
的平均词边界。如果你想'拍'成为单词的一部分,请删除它们。
答案 4 :(得分:0)
它不起作用,我需要在一个字符串值内搜索pat,所以我认为搜索shud开始像“[az] [pat]一样,但问题是它没有在内部搜索(”输入pat name“)
答案 5 :(得分:0)
尝试"[:a ]*<pat>[:a ]*"
。