0
私はこのような文字列を持っている:彼らは私が2つのセミコロンの間にアラビア文字のような特定の例、魔女を行く後正規表現マッチングの文字列の一部を除外する方法(アラビア語辞書としては)
var str = "translation1; translation2; اللغة العربية example1; اللغة العربية example2; اللغة العربية example3; اللغة العربية example4; اللغة العربية example5; اللغة العربية example6; اللغة العربية example7; اللغة العربية example8; اللغة العربية example9";
それは、単語の翻訳です。私は翻訳と例の間で分離し、例のみと配列を取得する必要があります
["اللغة العربية example1", "اللغة العربية example2", .... ]
私はこのコードを試みた:
var str = "translation1; translation2; اللغة العربية example1; اللغة العربية example2; اللغة العربية example3; اللغة العربية example4; اللغة العربية example5; اللغة العربية example6; اللغة العربية example7; اللغة العربية example8; اللغة العربية example9;";
var match = "";
var example_pattern = /;([\s\S]+?[ا-ي]+?[\s\S]+?);/ig
var examples = [];
while (match = example_pattern.exec(str)) {
examples.push(match[1]);
example_pattern.lastIndex --;
}
console.log(examples);
をしかし、それは例を返し[0] = " translation2;اللغةالعربيةexample1; "
「translations2;」を削除するにはexample1のマッチングから?
残りの要素は正常に実行されます。
(私は、コードが唯一の第一、3D、第5、第7、第9例で、配列を返すため、それなしexample_pattern.lastIndex --;
を作った。かもしれませexample_templateより良い正規表現を作るための方法があります)
[str.match(/ [ð-É] +/g) '](https://jsfiddle.net/0vouaLe0 /)を使用して、1つ以上のアラビア文字の塊に一致させますか? –