0
複数の区切り文字を持つ文字列に複数のメールがあります,;:/|\""
nodejsでregexを使用して複数の区切り文字をフィルタリングする
私はスリップして配列に追加しようとしています。
ほぼほとんど問題はありません。 私の正規表現に何か間違いがあります。
ノードJSコード:ここ
var x = "mmmm lll\"kkkk\jjj/iiii,hhhh:gggg+ffff-eee+dddd;cccc|bbbb:aaaa";
var separators = [' ', '\\\+', '-', ';', '"', '\\|','//', '\\|', '\\\(', '\\\)', '\\*', '/', ':', '\\\?'];
console.log(separators.join('|'));
var tokens = x.split(new RegExp(separators.join('|'), 'g'));
console.log(tokens);
が出力されます。
|\+|-|;|"|\||//|\||\(|\)|\*|/|:|\?
[ '[email protected]',
'[email protected]',
'KKKK @ gmail.comjjj @ gmail.com' を、 「IIII @ gmail.com、HHHH @ gmail.com '、
'[email protected]',
'[email protected]',
'[email protected]',
'[email protected]',
'[email protected]',
'[email protected]',
'[email protected]' ]
感謝..私は( "MMMM LLL \" KKKK \\ JJJ/IIII、HHHH文字列を変更することはできませんdddd; cccc | bbbb:aaaa)これは私の手にはない... thatsなぜ私は正規表現のコードで何かをする必要があります... –
問題は、jsは文字列にあるとは考えていません。 'x.indexOf( '\\')' – TheChetan
を参照してください。https://stackoverflow.com/a/3903661/4110233を参照してください.JS内の特殊文字であるため、1つではなくすべての場所に\\が必要です。 – TheChetan