Javascript正則表達式是一種用來匹配字符串的工具,它的功能十分強大,我們可以用它來匹配任何字符,包括中文。
在正則表達式中,漢字是以Unicode編碼來表示的,比如"你"對應的Unicode編碼是`\u4f60`。我們可以使用Unicode編碼來匹配中文字符,例如:
const str = "你好,世界!"; const reg = /\u4f60\u597d/g; console.log(str.match(reg)); // ["你好"]
上面的代碼中,我們使用`\u4f60`和`\u597d`分別匹配了"你"和"好",最終得到了"你好"這個匹配結果。
如果我們要匹配整個字符串中的所有中文字符,可以使用一個Unicode編碼范圍的正則表達式來實現:
const str = "你好,世界!"; const reg = /[\u4e00-\u9fa5]/g; console.log(str.match(reg)); // ["你", "好", "世", "界"]
上面的代碼中,`[\u4e00-\u9fa5]`匹配所有漢字的Unicode編碼范圍。
除了使用Unicode編碼來匹配中文字符,我們還可以使用JavaScript的String對象自帶的match方法來直接匹配中文字符,例如:
const str = "你好,世界!"; const reg = /[\u4e00-\u9fa5]/g; console.log(str.match(reg)); // ["你", "好", "世", "界"]
上面的代碼中,我們使用了`/[\u4e00-\u9fa5]/g`來匹配中文字符,并且直接調用了String對象的match方法,得到了所有匹配結果。
總結一下,Javascript正則表達式可以通過Unicode編碼來表示中文字符,并且可以使用正則表達式范圍來匹配所有中文字符。此外,我們還可以使用String對象的match方法來直接匹配中文字符。