我想检索任何以" $
"开头的单词并以" $
"结束在数据字符串中是
sdf sdfsdff ffff dd $ dsf $ ddd $ 4rrr2 $。 $ spoif $ $ 1d4dd $
$(data)$
之间的数据并不重要。
以4开头的数据字符串的结果以" $
"开头。并以" $
"。
我不知道创建它需要什么语法。
答案 0 :(得分:1)
您可以使用以下正则表达式:
\$\w*\$
第一个和最后一个$有一个反斜杠来逃避它们,因为它们是特殊的正则表达式字符。
中间部分\ w *匹配任何(字,数字)零个或多个字符
答案 1 :(得分:1)
这个正则表达式将得到你想要的,假设你想在美元符号之间 :
\$\w+\$
如果您接受$$
作为有效结果,请执行此操作:
\$\w*\$
要将其分解,这意味着:
\$
文字字符$
,而不是"字符串结尾的正则表达符号"只有$
没有转义字符\
\w
- 任何单词字符(不包括空格)
+
或*
指定字词数量。 +
含义" 1或更多"并且*
表示零或更多
我建议您使用在线正则表达式测试程序,这样您就可以实时查看正则表达式的可视化效果,而无需编译和运行代码。尝试:
答案 2 :(得分:0)
由于您的字符串可能以美元开头和结尾,因此您需要确保采取不合理的方式
var input = " $dsf$ ddd $4rrr2$. $spoif$ $1d4dd$";
var regexp = new Regex(@"\$(.*?)\$");
foreach (Match match in regexp.Matches(input))
{
Console.WriteLine(match.Groups[1]);
}