我如何使用正则表达式从匹配了阿拉伯语和英语的混合文本的JQuery脚本中排除URL?

问题描述 投票:0回答:1

这是How to detect text language with jQuery and XRegExp to display mixed RTL and LTR text correctly的后续问题

我正在使用自定义Twitter Feed插件在网站上显示客户的Twitter feed。他用英语和阿拉伯语发推文。要测试推文是英语还是阿拉伯语,然后测试ltr或rtl的样式,我使用了开发人员建议的简单jQuery脚本。

jQuery('.tweet').each(function() {

  if (jQuery(this).find('.tweet-text').text().match(/[a-z]/i)) {
    jQuery(this).find('.tweet-text').addClass("ltr");
  } else {
    jQuery(this).find('.tweet-text').addClass("rtl");
  }
});

对于大多数推文来说,这都很有效。但是,如果客户端在阿拉伯文推文中包含URL链接,则此方法不起作用,例如:

انهأنجمعتوالديون,مماالأمموسمّيتو,٣٠الشرقيةالفرنسيدنو。 وحتىاتّجةأيعدد,ببالفشلالعملياتبينأن,صفحةشعاراليمينيعرضمن。 يتبقّوكسبتعدمو。 ومنمسارحالمضيأم,أمدهالأداءيتمإذ。 https://www.google.co.uk/

如何从脚本的匹配元素中排除所有URL?

jquery regex twitter arabic
1个回答
0
投票

我找到了一个似乎可以从不同角度解决问题的答案。我没有尝试排除URL,我只是将推文中的第一个单词与英语或阿拉伯语匹配,然后从中设置文本样式。修改后的脚本现在是:

jQuery('.tweet').each(function() {

  if (jQuery(this).find('.tweet-text').text().split(' ')[0].match(/[a-z]/i)) {
    jQuery(this).find('.tweet-text').addClass("ltr");
  } else {
    jQuery(this).find('.tweet-text').addClass("rtl");
  }
});
© www.soinside.com 2019 - 2024. All rights reserved.