javascript - 替换文本中的数字

标签 javascript jquery replace

我正在尝试从字符串中替换/删除多个字符。从 Sharepoint 中,我获取了多个值,据我所知,当我使用 sharepointPlus 脚本从列表中获取值时,我无法删除这些 ID 信息。所以我稍后尝试用 jquery 来完成并替换。 我从列表中得到的内容如下:

  • 4;#Galaxy S6;#
  • 5;#Galaxy S6 edge;#
  • 15;#Galaxy S6 edge+;#
  • 1;#iPhone 6;#13;#iPhone 6 Plus;#2;#iPhone 6s;#14;#iPhone 6s Plus

要删除的结构:设备名称后的;#number 和;#。

正如我所看到的结构不同,主要条目有 ID;#Name;# 最后一个只是 ID;#Name

我当前使用的脚本部分是:

$("td.affectedDevices:contains(';#')").each(function() {
    $(this).html(function(index, text) {
        return text.replace('0', '')
                   .replace('1', '')
                   .replace('2', '')
                   .replace('3', '')
                   .replace('4', '')
                   .replace('5', '')
                   .replace('6', '')
                   .replace('7', '')
                   .replace('8', '')
                   .replace('9', '')
                   .replace(';#', '');
    });
});

我在另一个地方使用此代码,我只从表中取出一个条目,然后它就可以工作。

问题是,上面的 JS 获取每个字符串的第一个“Number;#”条目...以及设备的编号,如下面的屏幕截图所示:

ActualState

应该是 Galaxy S6 <br /> Galaxy S6 Edge 等...

我在这里已经发现了一些类似的问题和答案,但解决方案根本不起作用......

Replacing Wildcard Text 该解决方案看起来不错,但是

$("td.affectedDevices:contains(';#')").each(function() {
    $(this).html(function(index, text) {
        return text.replace(/\([0-9]\);#/, '');
    });
});

没有任何效果... 任何人都可以帮我解决这个问题吗?或者是完成整个事情的更好主意?

Fiddle

感谢您的帮助 亲切的问候

最佳答案

$("td").each(function() {
    $(this).html(function(index, text) {
        return text.replace(/[0-9]?;#/g, '').replace(/^[0-9]/g, '');
    });
});

希望这对您有帮助。

这是工作 fiddle :https://jsfiddle.net/1u6brd3m/

关于javascript - 替换文本中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36471571/

相关文章:

jquery - jQuery 中的简单标签提取

Jquery 事件作为副作用被触发。如何阻止这种情况

excel - VBA - 根据条件更改单元格的值

python - 无法从长字符串中剔除不需要的字符

javascript - AJAX POST JSON 数据并接收回 javascript?

javascript - 创建全局变量并生成随机数并在 Javascript 中调用函数时更新变量

javascript - 用于 WebRTC 的 Youtube 直播 API

javascript - 高效检测单页应用中的 DOM 变化

javascript - 标签索引在表单中不起作用

javascript - 如何使用js删除json中特定索引处的字符?