是否有通过 JavaScript 正则表达式(使用“xregexp”JS library cab)在日语字符串中查找单词边界的解决方案(例如:“私はマーケットに行きました。”)?
例如:
var xr = RegExp("\\bst","g");
xr.test("The string") // --> true
对于日语字符串,我需要相同的逻辑。
是否有通过 JavaScript 正则表达式(使用“xregexp”JS library cab)在日语字符串中查找单词边界的解决方案(例如:“私はマーケットに行きました。”)?
例如:
var xr = RegExp("\\bst","g");
xr.test("The string") // --> true
对于日语字符串,我需要相同的逻辑。
然而,将日语句子分成单词的实际问题比看起来要复杂得多,因为单词并没有像在英语中那样被分隔成空格。
例如,句子私はマーケットに行きました。(“我去了市场”)有以下词:
一个可靠的日语句子解析器除其他外,必须找到句子中的粒子(wa 和 ni)的位置,以便找到剩余的单词。
\b
,\w
和\W
, 在 JavaScript 中不支持 Unicode。您必须将单词边界定义为特定的字符集。喜欢(^|$|[\s.,:\u3002]+)
或类似。
\u3002
是从('。'.charCodeAt(0)).toString(16)
。是日文的标点符号吗?
或者,相反,定义一个 Unicode 范围的单词构造字母并将其否定:
var boundaries = /(^|$|\s+|[^\u30A0–\u30FA]+)/g;