[英]What is wrong with my regex (simple)?
我試圖使一個正則表達式匹配所有出現在行的開頭並以#開頭的單詞。
例如在:
#region #like
#hey
它將匹配#region和#hey。
這就是我現在所擁有的:
^#\w*
很抱歉張貼這個問題。 我敢肯定它有一個非常簡單的答案,但我一直找不到。 我承認我是正則表達式菜鳥。
根據您為RegexOptions傳遞的標志,您所擁有的應該可以工作。 您需要確保通過RegexOptions.Multiline
:
var matches = Regex.Matches(input, @"^#\w*", RegexOptions.Multiline);
請參閱我上面鏈接的文檔:
多行多行模式。 更改^和$的含義,以便它們分別在任何行的開頭和結尾匹配,而不僅僅是整個字符串的開頭和結尾。
正則表達式看起來不錯,請確保使用逐字字符串文字 (@前綴)定義正則表達式,即@"^#\\w*"
否則反斜杠將被視為轉義序列。
使用此正則表達式
^#.+?\b
.+
將確保#
和\\b
表示單詞邊界后至少一個字符。 ?
向+
運算符添加非貪婪性,以避免匹配整個字符串#region #like
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.