任何人都可以解释这个正则表达式吗?此查询在Oracle中用于返回具有双元音的员工的姓氏(其中last_name包含两个相邻的a,e,i,o或u出现,无论大小写):
SELECT last_name
FROM employees
WHERE REGEXP_LIKE (last_name, '([aeiou])\1', 'i');
输出结果为:
LAST_NAME
---------------
De Haan
Greenberg
Khoo
Gee
Greene
Lee
Bloom
Feeney
答案 0 :(得分:0)
正则表达式模式var data = readDataFromCSV(fileName: FileName, fileType:FileExtension)
data = cleanRows(file: data)
let csvRows = csv(data: data)
print(csvRows[1][1])
只是连续匹配两个元音:
([aeiou])\1
如果你检查匹配的姓氏,你会发现他们在某个位置都有重复的元音。顺便说一下,术语([aeiou]) match and capture a single vowel
\1 then match the same vowel we just captured
被称为反向引用,它指的是模式中较早的捕获量。
浏览下面的有用演示,以便更好地了解该模式的工作原理。