我有一个EditText,我希望用户能够输入MAC地址.
如何限制用户只输入A,B,C..F和数字并以正确的格式写出(00:11:22:33:44:55)?
我该如何验证?
编辑:我发现这个代码可以满足我的需求,但需要使用IP地址.我试图使用你建议的正则表达式,但它们不起作用.
public void showIP(){
// Set an EditText view to get user input
final EditText input = new EditText(this);
input.setInputType(InputType.TYPE_CLASS_PHONE);
input.setSingleLine();
InputFilter[] filters = new InputFilter[1];
//filter used to allow only IPv4 style address
filters[0] = new InputFilter() {
public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
if (end > start) {
String destTxt = dest.toString();
String resultingTxt = destTxt.substring(0, dstart) + source.subSequence(start, end) + destTxt.substring(dend);
if (!resultingTxt.matches("^[\\dA-F]{2}(?::[\\dA-F]{2}){5}$")) {
return …Run Code Online (Sandbox Code Playgroud)