我有一个带有全名字EditText
段的表单,我想将字符串分解为名字和姓氏字符串.谁可以帮我这个事?我可以知道实现目标的正确方法是什么?
如果用户输入他/她的名字,如A B C
.名字将是A
&姓氏意志BC
我正在尝试这个:
EditText UNSP =(EditText)findViewById(R.id.UserNameToSIGNUP); String UserFullName=UNSP.getText().toString(); String[] arr=UserFullName.split(" "); String fname=arr[0]; String lname=arr[1]; Log.d("First name",fname); Log.d("last name",lname); if(UserFullName.length()==0) { Toast.makeText(getApplicationContext(), "Submit Name", Toast.LENGTH_SHORT).show(); } else{ Toast.makeText(getApplicationContext(), "Success", Toast.LENGTH_SHORT).show(); } }
Faakhir.. 22
如果您只需要全名而不使用数组的姓氏和名字,这是我认为最好的方法.名字可以是两个或两个以上的单词,但姓氏总是在现实世界中的一个单词上.
String name = "Abdul Latif Hussain" String lastName = ""; String firstName= ""; if(name.split("\\w+").length>1){ lastName = name.substring(name.lastIndexOf(" ")+1); firstName = name.substring(0, name.lastIndexOf(' ')); } else{ firstName = name; }
输出字符串将是:firstName ="Abdul Latif"lastName ="Hussain"