在字符串 as3 中查找前 3 个单词
Find first 3 words in string as3
我想执行这样的私信功能:
var a = "/pm John Hello John! this is a private message";
if(a.indexOf("/pm") >= 0){
//It contains the String!
trace("Contains /pm");
sendPM(toWho, Msg);
}
else{
sendPublicMsg();
}
检测字符串中是否有/pm
,
调用函数...
- 使用第二个单词 (
John
)
- 也使用字符串的第三部分 (
Hello John! this is a private message
)。
多种方式之一:
var a = "/pm John Hello John! this is a private message";
var splitted:Array = a.split(" ");
if(splitted[0] == "/pm"){
sendPM(splitted[1], a.replace(splitted[0] + " " +splitted[1],""));
}
与 indexOf
相比的优势在于,如果您需要 f.ex,现在您可以在实际消息中使用 /pm
。教约翰如何使用此功能。
另一种解决方法是使用正则表达式:
var a:String = "/pm John Hello John! this is a private message";
var privateMessagePattern:RegExp = /(\/pm) (\w+) (.*)/;
if(a.search(privateMessagePattern) == 0) {
var aMessage:Array = a.match(privateMessagePattern);
var recipient:String = aMessage[2];
var message:String = aMessage[3];
sendPM(recipient, message);
} else {
sendPublicMsg();
}
上述代码中的aMessage数组将包含4个元素(第一个是原始字符串,接下来的元素是由[=15=定义的3组]privateMessagePattern RegExp。如果RegExp不匹配数组将为空,搜索方法返回的索引也将为-1。
我想执行这样的私信功能:
var a = "/pm John Hello John! this is a private message";
if(a.indexOf("/pm") >= 0){
//It contains the String!
trace("Contains /pm");
sendPM(toWho, Msg);
}
else{
sendPublicMsg();
}
检测字符串中是否有
/pm
,调用函数...
- 使用第二个单词 (
John
) - 也使用字符串的第三部分 (
Hello John! this is a private message
)。
- 使用第二个单词 (
多种方式之一:
var a = "/pm John Hello John! this is a private message";
var splitted:Array = a.split(" ");
if(splitted[0] == "/pm"){
sendPM(splitted[1], a.replace(splitted[0] + " " +splitted[1],""));
}
与 indexOf
相比的优势在于,如果您需要 f.ex,现在您可以在实际消息中使用 /pm
。教约翰如何使用此功能。
另一种解决方法是使用正则表达式:
var a:String = "/pm John Hello John! this is a private message";
var privateMessagePattern:RegExp = /(\/pm) (\w+) (.*)/;
if(a.search(privateMessagePattern) == 0) {
var aMessage:Array = a.match(privateMessagePattern);
var recipient:String = aMessage[2];
var message:String = aMessage[3];
sendPM(recipient, message);
} else {
sendPublicMsg();
}
上述代码中的aMessage数组将包含4个元素(第一个是原始字符串,接下来的元素是由[=15=定义的3组]privateMessagePattern RegExp。如果RegExp不匹配数组将为空,搜索方法返回的索引也将为-1。