2017-08-28 10 views
1

私は文字列からすべての中国語文字を置き換える方法は?

str = 'Arc's 弧' 
str.replace(/[^a-z\d\s]+/gi,''); 

結果、以下のコードは

Arc039s 

期待される結果

Arc's 

コードの何が問題になっていて、ことを含む漢字を除去するための正しい方法であるを示してみました句読点?

ありがとうございます。この

var str = "Arc's 弧" 
alert (str); 
// by your regex 
alert (str.replace(/[^a-z\d\s]+/gi,'')); 
// by new regex which removes non-ascii characters 
alert(str.replace(/[^\x00-\x7F]/g, "")); 

str.replace(/[^a-z\d\s]+/gi,'')

+1

あなたは必ず実際の文字列は '' "アーク'の弧" はなかったですか?入力HTMLですか?なぜそれらの文字を削除したいのですか? – Ryan

+0

@ Ryanはい、データベースから取得し、whatsappがテキストを適切に送信できない場合、whatsappを介してテキストを共有したいと考えています。 – Crazy

+1

漢字を削除する代わりにエスケープしようとしましたか? –

答えて

0

チェックは、中国語の文字を削除しますが、それはまた、ので、あなたの新しい文字列がArcsになりますが、str.replace(/[^\x00-\x7F]/g, "")正規表現でそれが非ASCII文字を削除し、新しい文字列がArc'sなります'を削除します。

http://jsfiddle.net/yjcL5/104/

+0

私の場合はうまくいかず、私はArcを表示することしかできず、whatsappにテキストを共有すると表示されない文字は残っていません。 – Crazy

+0

@Zidanceよく理解するには、使用しているコードと全く同じコードを作成してください – Amogh

+0

データベースからデータを表示するときに発生するため、jsfiddleを作成できません。アポストロフィを使用してサンプルデータを作成している場合、問題はありません。 – Crazy

関連する問題