2012-07-26 81 views
0

我需要在字符串中找到所有'符号,然后从字符串的开头提取所有字符到第一个出现的'。例如:我有Jon's,我需要得到Jon。任何人都可以帮我吗?将一个字符串提取到一个符号

+1

@allentranks你可以看到,从问题标签:[标签:java描述] [标签:jQuery的] – Esailija 2012-07-26 12:55:42

+3

你需要从字符串中删除“'”或获取第一个“'”之前的部分? 如果您的文字是“Papa Jon's Pizza Deliver's”,您会期待什么? – Pabuc 2012-07-26 12:58:27

回答

6

如何使用split()方法?

var name="Jon's"; 
var result=name.split("'")[0]; 
alert(result); 

样品:http://jsfiddle.net/aJpda/2/

+1

Downvoter,请留言评论? – Shyju 2012-07-26 13:01:55

+0

@anonymousdownvotingislame:该解决方案将从字符串的开始处返回到第一个事件,因为它将返回由split函数返回的数组的第一个元素。你可以在样本中看到它。 – Shyju 2012-07-26 13:03:27

+1

这就是我需要的! – Tomas 2012-07-26 13:13:22

1
var myString = "Jon's"; 

myString = myString.slice(0, myString.indexOf("'" )); 
+0

这样'myString'返回''s'。他想删除这部分原始字符串 – 2012-07-26 12:56:38

+0

这会给(不是Jon)。 – Shouvik 2012-07-26 12:57:37

+2

@MarkLinus,@Shouvik:它会返回'Jon' – jAndy 2012-07-26 12:58:36

0
var str = "Jon's"; 
var pos = str.indexOf("'"); 
alert(str); 
var newStr = str.slice(0,pos===-1 ? str.length : pos); 
alert(newStr);​ 

的jsfiddle:here

您还可以使用substring方法:

var str = "Jon's"; 
var pos = str.indexOf("'"); 
alert(str); 
var newStr = str.substr(0,pos===-1 ? str.length : pos); 
alert(newStr);​ 
0

下面的代码会给哟你在“'”之前的文字。

"Jon's".split("'")[0] 
3
var text = "Jon's"; 
text = text.substring(0, text.indexOf("'")); 

我不认为这是你的问题,但。如果字符串中有2个'会发生什么?你真的需要什么?如果你进一步解释,我可以提供帮助。

0

您可以使用这样的功能:

function cutString(string, symbol){ 
    return string.slice(0, string.indexOf(symbol )); 
} 

希望这有助于