检查字符串与模式匹配的条件

时间:2018-10-26 06:15:45

标签: java pattern-matching

我正在尝试替换匹配模式的字符串。 示例:2(M_A)

String s="2(M_A)";
    if (s.matches([0-9()])) {
        //
    }

2 个答案:

答案 0 :(得分:1)

这样做吧;

zs=10.0.3.10
zb=/usr/local/bin/zabbix_sender
zh=zabbix
# ql = queue link
while read ql
do
    val=$(aws sqs get-queue-attributes --queue-url $ql --attribute-names ApproximateNumberOfMessages --region us-west-2 --output text | awk '{print $2}')
    echo "$ql count is $val"
    $zb -z $zs -s $zh -k ${ql##*/} -o $val >/dev/null 2>&1
done <<END
https://sqs.us-west-2.amazonaws.com/843390035802/testService1
https://sqs.us-west-2.amazonaws.com/853390078801/testService2
https://sqs.us-west-2.amazonaws.com/843393305801/testService3
https://sqs.us-west-2.amazonaws.com/875660005801/testService4
https://sqs.us-west-2.amazonaws.com/843390635802/testService5
END
  • if(s.matches("[0-9]*\\(.*\\)")){ //do sth } 与字符串的第一部分(即您的字符串中的[0-9]*)匹配。
  • 2\\(.*\\)匹配。 "(anything)"是转义字符。 不要忘记这样做。 \\与所有字符匹配。

答案 1 :(得分:0)

使用Java正则表达式库。

裁判-JavaTPoint

if (Pattern.matches("[0-9]*\\(.*\\)", s)){
   // your code
}