Java中用正则表达式截取字符串中第一个出现的英文左括号之前的字符串的正则表达式为__?

比如:北京市(海淀区)(朝阳区)(西城区),截取结果为:北京市

1890 次浏览
  • A、".*?(?=\()"
  • B、".*?(?=\\()"
  • C、".*(?=\\()"
  • D、".*(?=\()"
‘.*’表示匹配0个或多个任意字符,后面的第一个问号表示非贪婪匹配,匹配尽量少的字符。(?=XXX)代表的是前向肯定断言(positive lookahead assertion),仅当子表达式 XXX 在此位置的右侧匹配时才继续匹配。‘\(’表示左括弧‘(’的转义,而正则表达式中的‘\’在java字符串中要写为‘\\’,因此java中‘\\(’表示‘(’的转义。
挑战成功
2年前
挑战失败
2年前