天天看點

用正規表達式處理含中文字元串的問題

已經是第二次遇到同樣的問題了,要比對的字元串裡含有中文,例如“<你好><Edward>”,我希望取出Edward的名字,是以正規表達式為“<[^>]*><([^>]*)>”,比對後隻要取group(1)即可。在一台裝有jdk1.4.2_06國際版的機器上,運作正常,但在裝jdk1.4.2_01的機器上,則完全不能比對。解除安裝原來的jdk,換成1.4.2_06版就沒有問題了。

為什麼會有這個差別呢,我試了增加各種參數例如-Duser.language=zh -Duser.region=cn -Dfile.encoding=GBK都沒有用,難道我的程式要求使用者機器上必須裝最新的jdk1.4?但據我所知,還有很多機器上裝的是jdk1.4.0呢,更别說jdk5.0了。

時間關系,這個問題暫時放在這裡,歡迎提供解決方法。