2017-01-26 16 views
0

文字列の先頭に文字列があり、文字列の最後にurl/link e.xがあるとします。 http://www.google.com。この文字列を2つの変数に分割する最も良い方法は何ですか: DescriptionTxt、LinkTxtURL /リンクを含む文字列をJavaで分割する

ありがとうございます。あなたは二つの別々の文字列を望んでいた場合

+0

いくつかの入力例とそれぞれの出力を入力してください。 –

+0

[文字列からのURLの検出と抽出]の可能な複製?(http://stackoverflow.com/questions/5713558/detect-and-extract-url-from-a-string) –

+0

リンクパターンによって異なります。 http://?で始まるという事実に頼ることはできますか? – Matt

答えて

0
String[] results = mystring.split(indexOf("http")); 

はその後、パターンを検出

String DescriptionTxt = results[0]; 
String LinkTxt = results[1]; 
+0

例:初期の文字列 "ありがとうBen Arnaoあなたの助けのためにhttp://www.stackoverflow.com"。結果は次のようになります:(?):results [0] = "あなたの助けにBen Arnaoに感謝します"、results [1] = "http://www.stackoverflow.com" –

+0

あなたの入力のフォーマットとあなたのプログラムがURLをどのように認識するかを指定します。空白文字の後の文字列の最後のx個の数字になる場合は、代わりにlastIndexOf( "")をデリミタとして使用することができます –

+0

大変ありがとう@Ben Arnao、このソリューションを試してみましょう! –

0

は常に注意が必要です。探しているキーワードが含まれているURLがある可能性があります。例:

A short description http://my.foo.bar/http-is-a-protocol 

lastIndexOf( "http")を指定すると、パーサーは失敗します。良い解決策は、最初に仮定したより複雑なものになる可能性があります。高度なアルゴリズムではhttp://に行くことができますが、https://も有効です。そして大文字はHTTP://のように忘れないでください。

あなたの説明にhttp://がない理由はありますか?

ここでは問題解決のための完全な解決策はありません。適度な努力で大部分のケースをカバーし、期待していなかったことでアルゴリズムが失敗した場合の対処方法を確認してください。

関連する問題