5,557
社区成员
![](https://csdnimg.cn/release/cmsfe/public/img/topic.427195d5.png)
![](https://csdnimg.cn/release/cmsfe/public/img/me.40a70ab0.png)
![](https://csdnimg.cn/release/cmsfe/public/img/task.87b52881.png)
![](https://csdnimg.cn/release/cmsfe/public/img/share-circle.3e0b7822.png)
请教一下各位,我用delphi正则式提取memo内的中文姓名,怎么死活匹配不上呢,网上查了很久表中文的表达式是正确的啊!,
目的是提取memo中所有2-4的中文姓名。请知道的大师指导一下,谢谢。
var
matches: TMatchCollection;
pattern:string;
begin
pattern:='[\x{4E00}-\x{9FA5}]{2,4}';
matches:= TRegEx.Matches (memo1.Lines.Text, pattern,[roMultiLine]);
另外本来是希望能提取memo中 中文姓名加 身份证号码的
正则式的身份证号匹配规则这样不知道对不对
^[1-9]\d{5}(((1[89]|20)\d{2}(((0[13578]|1[0-2])(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)(0[1-9]|[12][0-9]|30))|(02(0[1-9]|[1][0-9]|2[0-8]))))|((((1[89]|20)(0[48]|[2468][048]|[13579][26]))|((19|20)00))0229))\d{3}(\d|X|x)$