簡體   English   中英

在#之后無法為.net選擇子字符串制作正則表達式

[英]Fail to make Regex for .net select substring after #

從這樣的字符串

一些描述123#code123

我需要這個:

code123

想法是在#字符之后拆分字符串。 我嘗試了這些正則表達式模式:

(?:#)(?<=。 ?) - >它只給我“#”
(。 ?#)(?<=。 ?) - >它給了我“一些描述123#”
(?:。 #)(?<=。*?) - >它給我“一些描述123#”

使用正則表達式選項RightToLeft從最后工作並獲取除#以外的所有字符:

string input = "some description 123 #code123";

Regex.Match(input, "[^#]+", RegexOptions.RightToLeft)

匹配組中的返回值0:

code123

否則,如果你不能使用那個選項,那么使用(?<= ) 背后的正面外觀 ,它告訴正則表達式解析字符串,直到找到一個特定的文本落后於匹配的內容。 您尋找的那種錨類型文本是#因此后面的模式和匹配的文本是:

(?<=#)(.+)

其中說找一個# ,沒有被消費( 匹配 )和以下字符,一對多將匹配導致:

code123

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM