web-dev-qa-db-ja.com

Javaで特定の文字の前にあるすべての文字を削除するにはどうすればよいですか?

文字列があり、htmlフォームから値を取得しているので、値を取得するとURLに含まれるので、特定の文字(=)の前のすべての文字を削除し、削除したいこのキャラクター。変数からその値を取得する必要があるため、=の後にある値のみを保存します。

編集:後に文字列の文字/値を取得しようとしているので、=も削除する必要があります...

9
Shariq Musharaf

.substring()を使用できます:

_String s = "the text=text";
String s1 = s.substring(s.indexOf("=")+1);
s1.trim();
_

その後、_s1_には、元の文字列の_=_の後のすべてが含まれます。

s1.trim()

.trim()は、文字列(先頭のスペース)の最初の文字(文字、数字などの空白ではない)の前のスペースを削除し、最後の文字の後のスペース(末尾のスペース)も削除します。

27
ItamarG3

多くの答えがありますが。正規表現の例を次に示します

String test = "eo21jüdjüqw=realString";
test = test.replaceAll(".+=", "");
System.out.println(test);

// prints realString

説明:

.+は任意の文字に一致します(行末記号を除く)
+量指定子— 1回から無制限の回数で、可能な限り何度でも一致し、必要に応じて返します(貪欲)
=は、文字=に一致します(大文字と小文字が区別されます)

これは https://regex101.com/ からの日陰のコピーペーストでもあり、正規表現を試すことができます。

4
Murat Karagöz

文字列を=から分割し、配列に分けて、=記号の後に指定する配列の2番目の値を取得できます。例:

String CurrentString = "Fruit = they taste good"; String[] separated = CurrentString.split("="); separated[0]; // this will contain "Fruit" separated[1]; //this will contain "they teste good"

次に、separated [1]には、元の文字列の=の後のすべてが含まれます。

2
Arjun Mehta

URL文字列内で最初に出現する文字を見つけることができます。例えば:

String URL = "http://test.net/demo_form.asp?name1=stringTest";

int index = URL.indexOf("=");

次に、インデックスに基づいて文字列を分割します

String Result = URL.substring(index+1); //index+1 to skip =

String Resultに値が含まれるようになりました:stringTest

1
yogur