gpt4 book ai didi

Java unicode 正则表达式不匹配德语字符

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:49:16 25 4
gpt4 key购买 nike

本题基于this question .

我正在使用 \P{M}\p{M}* 来匹配所有字母(德语和法语)。

我选择这个正则表达式是为了避免定义每个 unicode 字符,例如:^[a-zA-Z[\\u00c0-\\u01ff]]+[\\']?(([-]?[a-zA-Z[\\u00c0-\\u01ff]]* [\\s]?)|([\\s]?[a-zA-Z[\\u00c0-\\u01ff]]*[-]?)){1,2}[a-zA-Z[\\u00c0-\\u01ff]]+$

但是,尽管使用了上一个问题中定义的 unicode 格式,但正则表达式不匹配 ßè 等字符。

我正在使用 JDK 6。

我错过了什么。谢谢!

最佳答案

对“任何字母”使用 posix 字符类 \p{L}:

System.out.println("abcßè".matches("\\p{L}+")); // true

关于Java unicode 正则表达式不匹配德语字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21628272/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com