1

こんにちは、単語rtmp://xx.yyy.in/sample/test?22082208、False#&allthiswordを分割しようとしています。単語sampleは動的に追加されます。カウントはわかりません。/ sample /を分割したいのですが、どうすればいいですか?

4

2 に答える 2

2

string.split()メソッドが必要です

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/String.html#split%28%29

var array:Array = myString.split("/"); //returns an array of everything in between / 

あなたの場合、これは戻ります

[0]->?rtmp:/ [1]-> xx.yy.in [2]-> sample [3]-> test?22082208、False#&all

テスト以外のすべてを探している場合は?22082208、False#&all部分とURLは常にこの形式になり、string.lastIndexOf()を使用できます。

 var pos:int = string.lastIndexOf("/", 0); //returns the position of the last /
 var newString:String = string.substr(0, pos); //creates a new string starting at 0 and ending at the last index of /

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/String.html#substr%28%29

于 2012-04-10T13:10:41.117 に答える
2

正規表現を使用してこれ(およびほとんどすべて)を実行できます。

var input:String = "rtmp://xx.yyy.in/sample/test?22082208,False#&all";
var pattern:RegExp = /^rtmp:\/\/.*\/([^\/]*)\/.*$/;
trace(input.replace(pattern, "$1")); //outputs "sample"

詳細は次のとおりです。

  • ^:文字列の先頭
  • rtmp:\/\/「rtmp://」を見つける最初の文字列
  • .*なんでも
  • \/最初のスラッシュ
  • ([^\/])スラッシュ以外のすべてをキャプチャするまで...
  • \/...2番目のスラッシュ
  • .*なんでも
  • $終わり

次に$1、括弧の間にキャプチャされたグループを表します。

于 2012-04-10T13:10:50.280 に答える