字符串替换正则表达式,从Facebook内容中删除符号

时间:2015-11-18 20:24:11

标签: javascript regex string replace

您好我想知道如何过滤掉这些自定义的Facebook符号。

CULTURE CLUB PRESENTS JENNIFER CARDINI
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

We proudly presents JENNIFER CARDINI
Support by Monsieur Moustache & Thang



▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
LINE-UP
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

#TOWNHALL

▮ Monsieur Moustache

▮ Thang

▮ JENNIFER CARDINI


▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
JENNIFER CARDI ...

预期结果是没有粗连字符和音乐符号的相同文本。

我对正则表达式知之甚少。我正在使用这个简单的功能,但我认为我需要另一种替换模式。

 function zonderRareSymbolen(str) {
   new_string = str.replace(/^([ A-Za-z0-9_@#+-.'"]+(\r)?(\n)?)*$/g, ''); 
   return new_string.toLowerCase();
 }

有可能吗?我已经尝试过把符号放在替换模式中。 我不能使用只允许字母和数字的模式吗?

更新 如果我将文本放在:

中,此功能有效
zonderRareSymbolen('... Kisses ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ Come ...');
function zonderRareSymbolen(str) {
  new_string = str.replace(/▬/g, ''); 
  return new_string;
 }

但不是来自对象的detail.description值:

zonderRareSymbolen(String(detail.desciption));
function zonderRareSymbolen(str) {
  new_string = str.replace(/▬/g, ''); 
  return new_string;
 }

有什么想法吗?

更新替换功能似乎不适用于自定义符号。 我现在所能做的只是解决它,只允许这样的所需字符:

function zonderRareSymbolen(str) { return (str).replace(/[^a-zA-Z0-9- ,=?&:.'"@/]/g, ' '); }

enter image description here

已解决由Mariano提供。放入<meta charset="UTF-8">后,我可以将符号粘贴到我的替换功能中并替换它们。

0 个答案:

没有答案