我有这样一个字符串:
Franciscan St. Francis Health - 印第安纳波利斯
我需要提取“-”之后的所有内容,包括破折号本身并将其输出到第二行。如何提取“-”之前的所有内容?正则表达式还是 jquery?
'-' 前面的字符串将是动态的并且可以有不同数量的字母...
最佳答案
都没有。我只想对字符串使用 native .split()
函数:
var myString = 'Franciscan St. Francis Health - Indianapolis';
var stringArray = myString.split('-');
//at this point stringArray equals: ['Franciscan St. Francis Health ', ' Indianapolis']
一旦创建了 stringArray
变量,您就可以以任何您想要的方式输出原始字符串的片段,例如:
alert('-' + stringArray[1]); //alerts "- Indianapolis"
编辑
解决评论者的后续问题:“如果连字符后面的字符串中有另一个连字符怎么办?”
在那种情况下,你可以这样做:
var myString = 'Franciscan St. Francis Health - Indianapolis - IN';
var stringArray = myString.split('-');
//at this point stringArray equals: ['Franciscan St. Francis Health ', ' Indianapolis ', ' IN']
alert('-' + stringArray.slice(1).join('-')); //alerts "- Indianapolis - IN"
.slice()
和.join()
都是JS原生的Array
方法,join()
与之前使用的 .split()
方法相反。
关于javascript - 正则表达式或 jquery 在特定字符后拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9607846/