[英]How to write a regex in java for a String with parenthesis?
我試圖解析Java中的C語言代碼,並且遇到如下語句
printf("hello world");
我正在使用Pattern.compile("printf/(/".*/"/)");
但收到錯誤消息指出
/(不是有效的轉義序列
請提供一種解決這種情況的方法。
要轉義字符,您需要使用反斜杠而不是正斜杠。 由於(
是一個特殊的元字符,因此您也需要對此進行轉義。
Pattern.compile("printf\\(\".*?\"\\);");
例:
String value = "printf(\"hello world\");";
System.out.println(value.matches("printf\\(\".*?\"\\);"));
//=> true
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.