如何忽略文本编辑视图之间的空格 Android

How to ignore spaces between text editview Android

我试图在文本之间的编辑视图中忽略 spaces,我不太确定如何才能做到这一点。我知道我可以使用 trim 功能来忽略全文前后的 space,但是如果有的话,我该如何忽略字符串之间的 space;

String myTextEdited myText.getText().toString().trim();

比如我在这里面有/用户类型;

Allan Bob
3523 JKO
NY1 U90

当我在我的 if 语句中读到这个或者把它放在另一个变量中时,我想忽略 spaces;

字符串名称="AllanBob"

比如忽略大小写我就是这样做的;

 if (myText.getText().toString().trim().equalsIgnoreCase(userInput)) {
                    // do something
                } else {
                    // do something
                }

我想做的是在这里添加另一个功能,它也忽略文本之前、之间和之后的 spaces,例如而不是;

   myname   is Henry      .   (space until here)

它应该读作 mynameishenry 但对于用户来说它仍然显示为他们所写的。

如果我的问题不清楚,请告诉我,我会尽力解释得更好

已编辑:

是否可以忽略 if 语句中字符串中的 spaces。例如;

if (myText.getText().toString().trim().equalsIgnoreCase("Henry 0887")) {
                    // do something
                } else {
                    // do something
                }

但目前如果用户输入 henry0887,if 语句不会验证它,因为我在验证文本中添加了一个 space,因此它在文本中寻找 space,是有可能克服这个问题,所以即使我在验证中有 space 它也会忽略它。

使用replaceAll()方法。 str = str.replace(" ",""); 或者对于所有 space 个字符: str = str.replace("\s+","");

编辑

if (myText.getText().toString().replace("\s+","").equalsIgnoreCase(userInput)) {
                    // do something
                } else {
                    // do something
                }

EDIT2

if (myText.getText().toString().replace("\s+","").equalsIgnoreCase("Henry 0887".replace("\s+",""))) {
                    // do something
                } else {
                    // do something
                }

你试过这个吗:

String  myString = myEditText.getText().toString();
myString  = myString .replace(" ", "");

希望对您有所帮助

编辑:

if (myText.getText().toString().replace(" ", "").equalsIgnoreCase(userInput) || myText.getText().toString().equalsIgnoreCase(userInput)) {...

试试这个,

if(myText.getText().toString().trim().replace(" ","").equalsIgnoreCase(userInput)) { // 做一点事 } 别的 { // 做一点事 }

希望对您有所帮助。