mysql中用于检查名称的PHP正则表达式包含重音字母,且名称长度大于5
如何使用正则表达式为以下场景编写查询mysql中用于检查名称的PHP正则表达式包含重音字母,且名称长度大于5,php,mysql,regex,Php,Mysql,Regex,如何使用正则表达式为以下场景编写查询 id name 1 Müllere 2 Kees 3 Hernández 4 Björn 上面给出的是我的MySQL表。我想得到的结果,名称包含重音字母和长度大于5的名称 WHERE length(name) > 5 and name REGEXP '[accentedcharacters]+' 但是,我不确定mysql REGEXP是否适用于重音字符 [1] 尝试此查询: Select * from test where Length(
id name
1 Müllere
2 Kees
3 Hernández
4 Björn
上面给出的是我的MySQL表。我想得到的结果,名称包含重音字母和长度大于5的名称
WHERE length(name) > 5 and name REGEXP '[accentedcharacters]+'
但是,我不确定mysql REGEXP是否适用于重音字符
[1] 尝试此查询:
Select * from test where Length(name) > '5' and name REGEXP '[accentedcharacters]+';
@Malai:这不起作用,请从测试中选择*名称REGEXP'[AccencedCharacters]+';这不起作用,请从测试中选择*,其中名称为REGEXP'[AccencedCharacters]+';“名称”可以包含重音字符和非重音字符以外的任何字符。如果不是,我建议你仔细考虑一下这个事实。是的,名字可以包含非重音字符。
SELECT * FROM letters
+--------+
| letter |
+--------+
| ' |
| - |
| a |
| b |
| c |
| d |
| e |
| f |
| g |
| h |
| i |
| j |
| k |
| l |
| m |
| n |
| o |
| p |
| q |
| r |
| s |
| t |
| u |
| v |
| w |
| x |
| y |
| z |
| å |
| ä |
| ö |
| ÿ |
+--------+
SELECT *
FROM letters
WHERE letter NOT REGEXP '[a-z\'|A-Z\-]';
+--------+
| letter |
+--------+
| å |
| ä |
| ö |
| ÿ |
+--------+