java中怎么用toString方法去除字符串中的标点,符号和数字?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中怎么用toString方法去除字符串中的标点,符号和数字?相关的知识,希望对你有一定的参考价值。

java中怎么用toString方法去除字符串中的标点,符号和数字?
例如:
String str = "3.14company!!!"
最终转换成
String s = “company”
打错了 是subString方法。。。。

纠正下,toString方法是用来转换为字符串的,不能用于字符串截取的。可以通过判断是不是字母,如果是字母的话,就保留下来,区域的直接忽略掉即可。

public static String getString(String src) //输入参数为相应的字符串
char[] cr= src.toCharArray();
char[] str= new char[cr.length];
int index = 0;
for(char newchar : cr)
if((newchar <= 'Z' && newchar>= 'A') || (newchar <= 'z' && newchar>= 'a')) //判断是不是字符
str[index ++] = c;


return new String(str, 0, index);//返回字符结果
参考技术A tostring()方法不能完成此功能吧。用字符串替换试试。

看看java的 pattern类和match类。
进行模式匹配的第一步是使用Pattern类创建一个模式对象,模式对象是一个封装的正则表达式。 pattern类调用compile方法返回一个模式对象。
给你个代码你自己捉摸捉摸。
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class test5
public static void main(String args[])
//给出两种方法来
//方法一 用空字符替换非字母字符
String str=new String("12*#D34comFpany,d2ds4!");
String regex1="[^a-zA-Z]";
//正则表达式,表示除了英文字母外的其他字符。^ 是非的意思
String regex2="[\\pAlpha]";
//正则表达式, 表示所有的字母
String result="";
//最后返回的结果
result=str.replaceAll(regex1, "");
// 方法一 这里用空字符串替换非字母字符;
System.out.print(result+" 该结果是用字符串替换得到的");
//方法二 匹配模式
Pattern p;
Matcher m;
p=Pattern.compile(regex2);
m=p.matcher(str);
result="";
//先把结果清空一下,因为result目前有值
while(m.find())
String s=m.group();
System.out.println("从"+m.start()+"到"+m.end()+"匹配模式子序列:");
System.out.println(s);
result+=s;

System.out.print(result);
//关于匹配模式你自己查吧



运行结果:
DcomFpanydds 该结果是用字符串替换得到的从4到5匹配模式子序列:
D
从7到8匹配模式子序列:
c
从8到9匹配模式子序列:
o
从9到10匹配模式子序列:
m
从10到11匹配模式子序列:
F
从11到12匹配模式子序列:
p
从12到13匹配模式子序列:
a
从13到14匹配模式子序列:
n
从14到15匹配模式子序列:
y
从16到17匹配模式子序列:
d
从18到19匹配模式子序列:
d
从19到20匹配模式子序列:
s
参考技术B 只保留字母,大小写

public static String toString(String src)
char[] cs = src.toCharArray();
char[] dest = new char[cs.length];
int index = 0;
for(char c : cs)
if((c <= 'Z' && c >= 'A') || (c <= 'z' && c >= 'a'))
dest[index ++] = c;


return new String(dest, 0, index);
参考技术C 这个不要截取字符串方法吧,用正则表达式替换啊 参考技术D String s = str.substring(4,11);本回答被提问者采纳

在java中String的方法:toString()怎么用?

toString();就是把其他的数据类型转换成String类型,
比如:
int
i=0;
String
b=i.toString();这个还有另一种转换法
String
b=(String)i;
嗯。就是这样使用的,兄弟
参考技术A Tostring()是将现有的数据类型转换成为String类型
比如:
int
s_int=10;
String
s_String
=
s_int.Tostring();这样就可以轻松的讲int转换成为String
参考技术B 任何一个类继承自Object,所以至少有一个默认的toString实现,当在一些序列的场合时,就会调用它,如System.out.print。至于String类本身的toString只是返回this,覆盖了默认取hash值的行为 参考技术C int
i
=
100;
String
str
=
i.toString();
拜托,回答这个答案的可千万别说是做JAVA的。丢人。
简单类型怎么可能i.toString();
至少在5.0及以前的版本不行。
封装类型还差不多。
toString方法没有参数,定义一个类的时候也可以覆盖此方法,按照自己的方式去toString();
这个是没有限制的。
参考技术D 没有参数,作用就是把对象转换成String.
java中的所有类都有这个方法,因为它是Object类中的,而所有类都直接或间接的继承了Object类

以上是关于java中怎么用toString方法去除字符串中的标点,符号和数字?的主要内容,如果未能解决你的问题,请参考以下文章

在java中String的方法:toString()怎么用?

java如何去除字符串中的空格并且计算字符串中汉字的个数

覆写toString方法 Java提供的默认toString方法不好用

JAVA构造方法中怎样用一个组合的字符串显示对象全部属性?

JS怎么去除字符串中的所有中括号

去除文本中标点符号的java程序