Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在编号前添加标记或文本_Javascript_Regex - Fatal编程技术网

Javascript 在编号前添加标记或文本

Javascript 在编号前添加标记或文本,javascript,regex,Javascript,Regex,我想在此文本中添加一个 SD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOS 类似这样的内容(添加br标记): SD0000000266675-杰米·安德烈斯·萨维德拉·贝坦库尔特SD0000000266688-霍拉西奥·帕拉西奥斯 问题:文本是动态生成的。var t=“SD0000000266675-JAIME ANDRES SAAVEDRA BETANCURTSD000000

我想在此文本中添加一个

SD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOS
类似这样的内容(添加
br
标记):

SD0000000266675-杰米·安德烈斯·萨维德拉·贝坦库尔特
SD0000000266688-霍拉西奥·帕拉西奥斯
问题:文本是动态生成的。

var t=“SD0000000266675-JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675-HORACIO PALACIOS”
var t = "SD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOS"
var p = t.indexOf(t.split(/\s/)[0], 1);
t.substr(0, p) + '<br>' + t.substr(p)
var p=t.indexOf(t.split(/\s/)[0],1); t、 substr(0,p)+'
'+t.substr(p)
意思:取第一个单词(直到第一个空格),在字符串中的其他地方找到它,然后插入你想插入的内容

编辑:根据您的评论,对于多行:

var t = "SD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOSSD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOSSD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOSSD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOSSD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOS"
var d = t.split(/\s/)[0];
var s = t.split(new RegExp('(?=' + d + ')'));
s.shift();
s.join('<br/>')
var t="SD0000000266675-詹姆·安德烈斯·萨维德拉·贝坦库尔SD0000000266675-霍拉西奥宫殿D0000000266675-詹姆·安德烈斯·萨维德拉·贝坦库尔SD0000000266675-霍拉西奥宫殿D0000000266675-詹姆·安德烈斯·萨维德拉·贝坦库尔德0000000266675-霍拉西奥宫殿D0000000266675-詹姆·安德烈斯·萨维德拉·贝坦库尔德0000000266675-霍拉西奥宫殿D0000000266675-JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675-HORACIO PALACIOS“
var d=t.split(/\s/)[0];
var s=t.split(新的RegExp('(?='+d+')));
s、 移位();
s、 联接(“
”)

(仅在保证标识符不包含任何奇怪字符的情况下有效;如果不包含任何奇怪字符,则可以重新措辞,或者使用其中一个。

如果序列以SD开头且长度至少为13,请尝试此RE(正则表达式):

替换此:
/(SD[0-9]{13,}[\s]{0,1}-[\s]{0,1}.*?)/i
与:

一美元

*在php中,您可以使用preg_replace函数来实现此功能。*

它是否始终具有“SD”“在序列号的开头?序列号的长度如何?它会一直保持不变吗?@RaheelHasan:它在字符串的开头。@RaheelHasan不。长度可以改变。谢谢!你能再解释一下吗?这行得通,但我不懂空格部分。如果字符串有两个以上的序列号,它行吗?”(纤度计)如果字符串是
SD0000000266675-JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675-HORACIO palaciosd000000266675-JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675-HORACIO palaciosd000000266675-JAIME ANDRES SAAVEDRA betancurts0000000266675-HORACIO palaciosd000000266675-JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675-HORACIO PALACIOSSD0000000266675-JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675-HORACIO PALACIOS
如果我的字符串没有“sd”怎么办仅部分数字?@JuanFernandoz:Edited。不管标识符是什么,只要它的第一次出现由空格分隔,并且不包含任何RegExp特殊运算符。任何数字和字母都可以。
@Raheel Nope。长度可以更改
var t = "SD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOSSD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOSSD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOSSD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOSSD0000000266675 - JAIME ANDRES SAAVEDRA BETANCURTSD0000000266675 - HORACIO PALACIOS"
var d = t.split(/\s/)[0];
var s = t.split(new RegExp('(?=' + d + ')'));
s.shift();
s.join('<br/>')
Replace this:
/(SD[0-9]{13,}[\s]{0,1}-[\s]{0,1}.*?)/i
with:
<br>$1