Android,从edittext中获取文本[重复]
Posted
技术标签:
【中文标题】Android,从edittext中获取文本[重复]【英文标题】:Android, getting the text from an edittext [duplicate] 【发布时间】:2014-12-19 00:54:10 【问题描述】:我正在学习在 android 中编程,我有一个问题。 我有一个带有 TextView、Button 和 EditText 的应用程序,我希望我的应用程序: 我打开它,我在edittext中输入一些东西,当我按下按钮时,我想检查edittext中的文本是否是有效的电子邮件(使用正则表达式)并在textview中相应地显示一条消息。
【问题讨论】:
不,我知道如何验证电子邮件,我想知道从编辑文本中获取文本并检查它的正确方法是什么。 使用findViewById()
并传递文本框的ID,接下来调用getText()
就可以了
I know how to validate the email,
。那请看你发帖的主题。 I want .... to get the text from the edit text
。那么请调整您帖子的主题。
我不知道您是在询问验证电子邮件地址、验证电子邮件正文(无论这意味着什么)还是......只是从EditText
获取用户的文本。如果您不解决您的问题以明确这一点,它可能会被关闭。
【参考方案1】:
您也可以不使用 RegEx 进行检查!您可以将字符串的每个字符放入字符数组中。在那里你可以检查是否有一个点,一个@等等......
private static final String EMAIL_PATTERN =
"^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"
+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]2,)$";
这是正则表达式 -> 这是一个测试类
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class EmailValidator
private Pattern pattern;
private Matcher matcher;
private static final String EMAIL_PATTERN =
"^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"
+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]2,)$";
public EmailValidator()
pattern = Pattern.compile(EMAIL_PATTERN);
public static void main(String[] args)
EmailValidator em = new EmailValidator();
boolean y = em.validate("sakulreld@aol.com");
System.out.println(y);
/**
* Validate hex with regular expression
*
* @param hex
* hex for validation
* @return true valid hex, false invalid hex
*/
public boolean validate(final String hex)
matcher = pattern.matcher(hex);
return matcher.matches();
【讨论】:
以上是关于Android,从edittext中获取文本[重复]的主要内容,如果未能解决你的问题,请参考以下文章
从 EditText 获取文本并在 Android 中使用 HttpPost 发送
通过android eclipse的多行edittext [重复]
如何使用android中的共享首选项将数据保存在editText中[重复]