【问题标题】:How to ignore spaces between text editview Android如何忽略文本editview Android之间的空格
【发布时间】:2016-05-05 18:20:43
【问题描述】:

我试图忽略文本之间的编辑视图中的空格,我不太确定如何去做。我知道我可以使用修剪功能来忽略全文前后的空格,但是如果有的话,我如何忽略字符串之间的空格;

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

例如,如果我在此有 / 用户类型;

Allan Bob
3523 JKO
NY1 U90

例如,当我在 if 语句中读取此内容或将其放入另一个变量中时,我想添加空格;

字符串名称 = "AllanBob"

例如,忽略大小写我正在这样做;

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

我想做的是在此处添加另一个功能,该功能也忽略文本之前、之间和之后的空格,例如而不是;

   myname   is Henry      .   (space until here)

它应该读作 mynameishenry,但对用户来说,它仍然像他们写的那样显示。

如果我的问题不清楚,请告诉我,我会尝试更好地解释它

已编辑:

是否可以忽略我在 if 语句中的字符串中的空格。例如;

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

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

【问题讨论】:

标签: android string-formatting editview


【解决方案1】:

使用replaceAll() 方法。 str = str.replace(" ",""); 或所有空格字符: 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
                }

【讨论】:

  • 您好,感谢您的及时回复。我怎样才能把它放在 if 语句中?
  • 请在我的帖子中查看编辑,请您帮忙。
  • 谢谢,简洁明了:)
【解决方案2】:

你试过了吗:

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

希望对你有帮助

编辑:

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

【讨论】:

  • 您好,感谢您的及时回复。我怎样才能把它放在 if 语句中?
  • @Henry,像这样:if (myText.getText().toString().replace(" ", "").equalsIgnoreCase(userInput)) {...
【解决方案3】:

试试这个,

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

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2014-06-06
    • 1970-01-01
    • 2019-05-15
    • 1970-01-01
    • 2019-05-31
    • 1970-01-01
    • 2018-07-24
    • 1970-01-01
    • 2015-03-31
    相关资源
    最近更新 更多