[英]Regex pattern for simple text
我有一些從PDF文件轉換的文本,現在我需要使用正則表達式從文本中獲取特定內容。 過去我使用索引和數學來獲得特定長度
這是我的文字:
1ZW6897X0327621544
每個以1Z
開頭,長度為18個字符。
我嘗試去Regexr.com尋求幫助,但這根本沒有任何意義:
1Z[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]
這就是我的大腦處理正在閱讀的內容的方式,從1Z
開始,然后在接下來的16個地方輸入0-9
任何字符?
有人可以幫忙嗎?
您可以使用
\b1Z[A-Z0-9]{16}\b
要么
\b1Z\w{16}\b
細節
\\b
單詞邊界 1Z
文字子字符串 [A-Z0-9]{16}
-16個大寫ASCII字母和/或數字(請注意\\w
將與任何字母,數字和/或_
匹配,並且如果不傳遞RegexOptions.ECMAScript
,它將與所有Unicode匹配字母/數字,以及更多“有趣”的符號) \\b
單詞邊界。 如果邊界是空格(即,匹配預期在字符串或空格的開頭,然后在字符串或空格的結尾),則可以使用(?<!\\S)1Z[A-Z0-9]{16}(?!\\S)
模式。
在C#中,您可以將其與Regex.Matches
使用:
var results = Regex.Matches(s, @"\b1Z[A-Z0-9]{16}\b")
.Cast<Match>()
.Select(m => m.Value)
.ToList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.