使用Javascript从字符串中删除字符

使用Javascript从字符串中删除字符,javascript,Javascript,我有一个以下格式的字符串。我试图在Java脚本中创建一个函数来删除某些字符 示例字符串: Var s = '18160 ~ SCC-Hard Drive ~ 4 ~ d | 18170 ~ SCC-SSD ~ 4 ~ de | 18180 ~ SCC-Monitor ~ 5 ~ | 18190 ~ SCC-Keyboard ~ null ~' 预期结果: s = 'SCC-Hard Drive ~ 4 ~ d | SCC-SSD ~ 4 ~ de | SCC-Monitor ~ 5 ~ |SC

我有一个以下格式的字符串。我试图在Java脚本中创建一个函数来删除某些字符

示例字符串:

Var s = '18160 ~ SCC-Hard Drive ~ 4 ~ d | 18170 ~ SCC-SSD ~ 4 ~ de | 18180 ~ SCC-Monitor ~ 5 ~ | 18190 ~ SCC-Keyboard ~ null ~'
预期结果:

s = 'SCC-Hard Drive ~ 4 ~ d | SCC-SSD ~ 4 ~ de | SCC-Monitor ~ 5 ~ |SCC-Keyboard ~ null ~'
如果您注意到上面的ID,例如18160、18170、18180和18190已被删除。这只是一个例子。结构如下:

id: 18160
description : SCC-Hard Drive
Type: 4
comment: d
因此,如果有多个项目,它们将使用派克delimeter连接起来。因此,我的要求是从上述结构中的给定字符串中删除id。

可能使用该方法

s.replace(/\d{5}\s~\s/g, "")
输出:

"SCC-Hard Drive ~ 4 ~ d | SCC-SSD ~ 4 ~ de | SCC-Monitor ~ 5 ~ | SCC-Keyboard ~ null ~"
另外,请注意Var是无效的。它应该是变量。

使用该方法

s.replace(/\d{5}\s~\s/g, "")
输出:

"SCC-Hard Drive ~ 4 ~ d | SCC-SSD ~ 4 ~ de | SCC-Monitor ~ 5 ~ | SCC-Keyboard ~ null ~"

另外,请注意Var是无效的。它应该是var.

我将用以下正则表达式使用replace函数,因为ID字段中的位数可能不同

s.replace(/(^|\|\s)\d+\s~\s/g, '$1')

我将使用以下正则表达式的replace函数,因为ID字段中的位数可能不同

s.replace(/(^|\|\s)\d+\s~\s/g, '$1')

要求是什么?那根绳子会变吗?数字总是一样的吗?ie.18***?什么定义了需要删除的部分?如果它们都是相同的格式,我建议通过正则表达式运行它。要求是什么?那根绳子会变吗?数字总是一样的吗?ie.18***?什么定义了需要删除的部分?如果它们都是相同的格式,我建议通过正则表达式运行它