有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

元音的java正则表达式负前瞻

我想要一个Java正则表达式字符串,可以查找字符串中的所有元音,除非:

  1. 第一个角色是
  2. 下划线后面的下一个字符

区域ID变为
AR_ID

LONG_NAME变成了
液化天然气

只有家变成了

我和http://gskinner.com/RegExr玩过 我现在有下面的正则表达式,它可以替换所有元音,除非它是起始字符

(?!^[AEIOU])[AEIOU]

我不知道如何获得第二部分(忽略紧跟下划线的元音)


共 (1) 个答案

  1. # 1 楼答案

    我猜您使用的是JavaScript,在这种情况下:

    (?!(?:^|_))_?[AEIOU]
    

    但是,如果您使用的是支持lookbehinds的正则表达式,请尝试以下方法:

    (?<!^)(?<!_)[AEIOU]
    

    请注意,需要两个lookbehind,因为lookbehind必须有固定的长度,而“字符串的开头或下划线”则没有固定的长度