簡體   English   中英

c# - 檢查字符串是否包含字符和數字

[英]c# - check if string contains character and number

如何檢查字符串是否包含以下字符“-A”后跟一個數字?

例如:thisIsaString-A21 = yes,包含“-A”后跟一個數字

例如:thisIsaNotherString-AB21 = no,不包含“-A”后跟數字

它可以使用正則表達式完成:

if (Regex.IsMatch(s, @"-A\d")) { ... }

\\d匹配任何數字。

看到它在線工作: ideone

if(Regex.IsMatch("thisIsaString-A21", "-A\\d+"))
{
  //code to execute
}

如果你真的想要提取-A [num]位,那么你可以這樣做:

var m = Regex.Match("thisIsaString-A21", "-A\\d+"));
if(m.Success)
{
  Console.WriteLine(m.Groups[0].Value);
  //prints '-A21'
}

您還可以執行其他操作 - 例如,如果您需要單獨提取A [num]位或僅提取數字:

var m = Regex.Match("thisIsaString-A21", "(?<=-A)\\d+");
//now m.Groups[0].Value contains just '21'

或者在我的第一個建議中,如果你想要'A21':

var m = Regex.Match("thisIsaString-A21", "(?<=-)A\\d+");
//now m.Groups[0].Value contains 'A21'

還有其他方法可以實現最后兩個 - 我喜歡非捕獲組(?<=)因為顧名思義,它可以保持輸出組的清潔。

暫無
暫無

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

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