首页 / 正则 / 表单验证常用的正则表达式
表单验证常用的正则表达式
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了表单验证常用的正则表达式,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4610字,纯文字阅读大概需要7分钟。
内容图文
![表单验证常用的正则表达式](/upload/InfoBanner/zyjiaocheng/1151/486706e480a04742bf23df16fa32a7ef.jpg)
1.步骤:
①创建文档解析器的工厂对象
②得到文档解析器对象
③获取输入流对象
④通过解析器的parse方法解析is对象 转换成Document对象
⑤返回的是文档的根节点
⑥判断是否有孩子节点进行获取子节点转换成元素节点得到属性节点
⑦得到具体的某个属性节点
2.解析元素节点、属性节点、文本节点:
3.界面搭建
界面搭建的相关代码:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${packageName}.${activityClass}" > <TextView android:id="@+id/tv_tq" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:text="@string/tq_wendu" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/tv_tq" android:text="@string/tq_fengli" /> <TextView android:id="@+id/tv_wendu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_alignParentTop="true" android:layout_toRightOf="@+id/tv_tq" android:gravity="right" android:text="@string/wendu_default" /> <TextView android:id="@+id/tv_fengli" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/textView2" android:layout_alignBottom="@+id/textView2" android:layout_alignLeft="@+id/tv_wendu" android:layout_alignParentRight="true" android:gravity="right" android:text="@string/fengli_default" /> <RadioGroup android:id="@+id/radioGroup1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:orientation="horizontal" android:layout_below="@+id/textView2" > <RadioButton android:id="@+id/radio0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="@string/city1Name" /> <RadioButton android:id="@+id/radio1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/city2Name" /> <RadioButton android:id="@+id/radio2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/city3Name" /> </RadioGroup> </RelativeLayout>
其中,android:gravity="right"是右对齐
4.调试
初始化,获取tv_wendu(温度)、tv_fengli(风力)默认值:
int checkedId = rg.getCheckedRadioButtonId();
initData(checkedId);
相关代码:
package www.csdn.net.activityg; import java.util.List; import www.csdn.domain.City; import www.csdn.net.xml.DOMXML; import android.app.Activity; import android.os.Bundle; import android.widget.RadioGroup; import android.widget.RadioGroup.OnCheckedChangeListener; import android.widget.TextView; public class MainActivity extends Activity implements OnCheckedChangeListener{ //声明空间对象 private RadioGroup rg; private TextView tv_wendu,tv_fengli; private DOMXML domXml; private List<City> cities; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //new DOMXML().domXml(); //获取rg的控件对象 rg=(RadioGroup) findViewById(R.id.radioGroup1); //注册监听事件 rg.setOnCheckedChangeListener(this); tv_wendu = (TextView) findViewById(R.id.tv_wendu); tv_fengli=(TextView) findViewById(R.id.tv_fengli); //解析xml文件对象的实例化 domXml=new DOMXML(); //调用相应的方法 cities=domXml.domXml(); //初始化tv_wendu、tv_feng默认值 int checkedId = rg.getCheckedRadioButtonId(); initData(checkedId); } @Override public void onCheckedChanged(RadioGroup group, int checkedId) { System.out.println(checkedId+"========="+R.id.radio0+";"+R.id.radio1); initData(checkedId); } //根据选中的id进行显示不同城市的天气 private void initData(int checkedId) { City city=null; switch(checkedId){ case R.id.radio0: for(City c:cities){ if("北京".equals(c.getQuName())){ city=c; } } break; case R.id.radio1: for(City c:cities){ if("江苏".equals(c.getQuName())){ city=c; } } break; case R.id.radio2: for(City c:cities){ if("湖南".equals(c.getQuName())){ city=c; } } break; } if(city!=null){ tv_wendu.setText(city.getTem1()+"°~"+city.getTem2()+"°"); tv_fengli.setText(city.getWindState()); } } }
总结:
DOM解析的时候,首先要把整个文件读取完毕,装载到内存中。然后再进行解析,在解析的过程,你可以直接获取某个节点,进行操作,也可以获取根节点然后进行遍历操作,得到所有的节点内容。
DOM 的优势主要表现在:易用性强,使用 DOM 时,将把所有的 XML 文档信息都存于内存中,并且遍历简单,支持 XPath ,增强了易用性。
DOM 的缺点主要表现在:效率低,解析速度慢,内存占用量过高,对于大文件来说几乎不可能使用。另外效率低还表现在大量的消耗时间,因为使用 DOM 进行解析时,将为文档的每个 element 、 attribute 、 processing-instrUCtion 和 comment 都创建一个对象,这样在 DOM 机制中所运用的大量对象的创建和销毁无疑会影响其效率。
适用于:解析小型的xml文件
原文:http://blog.csdn.net/u011043843/article/details/28422301
内容总结
以上是互联网集市为您收集整理的表单验证常用的正则表达式全部内容,希望文章能够帮你解决表单验证常用的正则表达式所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。