我正在尝试提取','逗号之前的所有内容。如何在JavaScript或jQuery中做到这一点?我试过了,但没有用。
1345 albany street, Bellevue WA 42344
我只想知道街道地址。
var streetaddress= substr(addy, 0, index(addy, '.'));
我正在尝试提取','逗号之前的所有内容。如何在JavaScript或jQuery中做到这一点?我试过了,但没有用。
1345 albany street, Bellevue WA 42344
我只想知道街道地址。
var streetaddress= substr(addy, 0, index(addy, '.'));
当前回答
如果你喜欢它简短,只需使用RegExp:
var streetAddress = /[^,]*/.exec(addy)[0];
其他回答
几乎和David G的答案一样,但是没有匿名函数,如果你不想包含一个的话。
s = s.substr(0, s.indexOf(',') === -1 ? s.length : s.indexOf(','));
在本例中,我们利用了substr的第二个参数是一个长度,并且我们知道子字符串从0开始。
上面的答案不是一个通用的解决方案,因为如果字符串不包含您正在寻找的字符,就会出现不受欢迎的行为。
如果你想要在一般情况下正确的行为,使用这个方法或者大卫G的方法,而不是上面的答案
Regex和split方法也可以工作,但对于这个特定的问题可能有点慢/过度。
试试这个:
streetaddress.substring(0, streetaddress.indexOf(','));
//split string into an array and grab the first item
var streetaddress = addy.split(',')[0];
此外,我建议使用驼峰格式(streetAddress)来命名变量,以提高可读性。
var newString = string.substr(0,string.indexOf(','));
你也可以使用shift()。
var streetaddress = addy.split(',').shift();
根据MDN Web Docs:
shift()方法从数组中删除第一个元素并返回被删除的元素。此方法更改数组的长度。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/shift