正则表达式检查单引号是否在另一个单引号之前

wvp*_*wvp 0 java regex

我想写一个正则表达式来验证单引号是否在另一个单引号之前.

有效字符串:

azerty''uiop
aze''rty''uiop
''azertyuiop
azerty''uiop''
azerty ''uiop''
azerty''''uiop
azerty''''uiop''''
Run Code Online (Sandbox Code Playgroud)

无效的字符串:

azerty'uiop
aze'rty'uiop
'azertyuiop
azerty'uiop'
azerty 'uiop'
azerty'''uiop
Run Code Online (Sandbox Code Playgroud)

nha*_*tdh 5

它可以在一行中完成:

inputString.matches("(?:[^']|'')*+");
Run Code Online (Sandbox Code Playgroud)

正则表达式只是意味着,字符串可以包含0或更多

  • 非引用字符[^']
  • 一对连续的报价 ''

我使用*+0或更多量词(*)的所有格版本().既然解释占有量词的含义是多么冗长,我会在这里引用你们来了解它.简单地说,这是一个优化.