我想找到的话开始单词,就像一个特定的字符开头:正则表达式来查找与一个特定的字符
Lorem存有#text二Lorem存有。 如何#你。没关系。完成。 现在有什么#else。
我需要让所有的单词都以“#”开头。所以我的预期结果是#text,#are,#else
任何想法?
我想找到的话开始单词,就像一个特定的字符开头:正则表达式来查找与一个特定的字符
Lorem存有#text二Lorem存有。 如何#你。没关系。完成。 现在有什么#else。
我需要让所有的单词都以“#”开头。所以我的预期结果是#text,#are,#else
任何想法?
搜索:
那么试试这个:
/(?<!\w)#\w+/
还是在C#它看起来像这样:
string s = "Lorem ipsum #text Second lorem ipsum. How #are You. It's ok. Done. Something #else now.";
foreach (Match match in Regex.Matches(s, @"(?<!\w)#\w+"))
{
Console.WriteLine(match.Value);
}
输出:
#text
#are
#else
啊好...赶在#字界之前不会工作,会吗?但在JavaScript中,你不能做负面后视? – 2010-04-20 21:20:16
@JeffB:你说得对。这将在C#中工作。 – 2010-04-20 21:23:10
匹配一个空格或行的开头后,从第一个字。取决于您的使用情况,最后一个字边界不是必需的。
/(?:^|\s)\#(\w+)\b/
圆括号将捕获您的单词在一个组中。现在,它取决于语言如何应用这个正则表达式。
(?:...)
是一个非捕获组。
你用c#和javascript标记了这个。你想在哪里做这个? – womp 2010-04-20 21:14:34
要在C里做# – 2010-04-20 21:29:42