Tag: 字符串

如何从java中的输入字符串中提取数值

如何仅从输入字符串中提取数值? 例如,输入字符串可能如下所示: String str=”abc d 1234567890pqr 54897″; 我只想要数值,即”1234567890″和”54897″ 。 所有字母和特殊字符都将被丢弃。

如何改进此Java代码以在字符串中查找子字符串?

我最近被要求提交一份解决工作问题的方法。 问题 :在字符串中查找子字符串。 Input: “Little star’s deep dish pizza sure is fantastic.” Search: “deep dish pizza” Output: “Little star’s [[HIGHLIGHT]]deep dish pizza[[ENDHIGHLIGHT]] sure is fantastic.” 请注意,荧光笔在此示例中不必具有完全相同的结果,因为您正在定义好的代码段,并返回最相关的代码段,并突出显示查询字词。 最重要的要求是编写它,因为我会编写一个生产代码 。 我的解决方案未被接受。 我怎么能改进它? 我知道,我本可以使用: Knuth-Morris-Pratt算法 正则表达式(我可以吗?) 我的问题: 科技公司在审查工作代码时会考虑什么。 我在同一天提交了代码,这有什么帮助吗? 在其中一条评论中,它指出,它看起来像学校代码而不是生产代码。 怎么样? 有什么建议么? 我的解决方案 FindSubString.java /** * FindSubString.java: Find sub-string in a given query * * @author zengr * […]

String.split()处于元字符+

我正在制作一个简单的程序来处理方程式的String输入中的方程式当我运行它时,我得到一个例外,因为我试图用“+”替换“+”所以我可以分割字符串在空间。 我应该如何使用 字符串replaceAll方法替换这些特殊字符? 以下是我的代码 线程“main”中的exceptionjava.util.regex.PatternSyntaxException:在索引0附近悬挂元字符’+’+ ^ public static void parse(String x){ String z = “x^2+2=2x-1”; String[] lrside = z.split(“=”,4); System.out.println(“Left side: ” + lrside[0] + ” / Right Side: ” + lrside[1]); String rightside = lrside[0]; String leftside = lrside[1]; rightside.replaceAll(“-“, ” -“); rightside.replaceAll(“+”, ” +”); leftside.replaceAll(“-“, ” -“); leftside.replaceAll(“+”, ” +”); List rightt = […]

在Rectangle中创建一个字符串

您好我正在尝试在矩形内部做一个字符串来在java中制作自定义菜单我正在使用canvas并执行以下方法,但我似乎无法正确使用它! public void render(Graphics g) { Graphics2D g2d = (Graphics2D) g; g2d.setColor(Color.WHITE); Font font = new Font(“Verdana”, Font.PLAIN, 20); g2d.setFont(font); g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); FontMetrics fm = root.getFontMetrics(font); g2d.drawString(option, (int)getX() – fm.stringWidth(option)/2, (int) getY() + fm.getHeight()); g2d.drawRect((int)getX() – fm.stringWidth(option)/2 – 20, (int) getY() – fm.getHeight() – 10, (int)getX() – fm.stringWidth(option)/2 + 40 , (int) getY() – fm.getHeight() […]

在Java中对字符串数组进行排序

允许用户使用字符串数组。 他们可以向数组添加字符串,从数组中删除字符串,搜索数组中的字符串,最终他们将能够对数组进行排序。 分类是搞砸我的原因。 我尝试过几种不同的方法。 第一种方法是将数组转换为ArrayList并使用Collections对ArrayList进行排序,ArrayList将被转换回静态类数组。 它不起作用。 我尝试的第二种方法是遍历数组并尝试仅排序用户添加的字符串而不是数组中的所有内容(因为数组中有一些空值)。 也许我应该遍历数组,然后将非null值存储到一个新的数组中,然后我可以对它进行排序? 但是如果我想在排序新数组后添加更多字符串呢? 这就是为什么我停止了第二个解决方案。 第三次尝试是在我的数组上使用Arrays.sort()但由于某种原因它不起作用。 这是例外: Exception in thread “main” java.lang.NullPointerException at java.util.ComparableTimSort.countRunAndMakeAscending(ComparableTimSort.java:290) at java.util.ComparableTimSort.sort(ComparableTimSort.java:157) at java.util.ComparableTimSort.sort(ComparableTimSort.java:146) at java.util.Arrays.sort(Arrays.java:472) at java.util.Collections.sort(Collections.java:155) at testingSearch.sortArray(testingSearch.java:93) at testingSearch.main(testingSearch.java:42) 这是我的代码: import java.util.Scanner; import java.util.Arrays; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class testingSearch { static String[] strArray; static { strArray = new String[5]; […]

如何设置一个等于“htp:// website htp:// website”的java字符串变量

所以我有一个很大的网站列表,我想把它们全部放在一个String变量中。 我知道我无法单独访问所有链接并逃脱//,但是有超过几百个链接。 有没有办法进行“块逃逸”,所以“块”之间的所有内容都被转义了? 这是我想要在变量中保存的示例。 String links=”http://website http://website http://website http://website http://website http://website” 也可以有人想到我这样做时可能遇到的任何其他问题吗? 我做了htp而不是http,因为我不允许根据堆栈溢出发布“超链接”,因为我不在那个级别:p 非常感谢 编辑:我正在制作一个程序,因为我有大约50页的单词文档,其中充满了电子邮件和其他文本。 我想过滤掉电子邮件。 我编写了程序来完成这个非常简单的操作,而不是我只需要将页面存储在运行程序的字符串变量中。

java存储中的实际参数在哪里

如果我将一个String文字传递给某些metohd: String s=new String(“stack”); String s2=s.concat(“overflow”); 其中将存储字符串“overflow”。 我的一个朋友争辩说它是在String常量池中创建的,我反对他。 请告诉我 提前致谢。

字符串替换不起作用,因为我认为它应该

public static boolean passwordConfirmed() { String attempt = JOptionPane.showInputDialog(“Password: “); FileReader fstream = null; String password = “”; try { fstream = new FileReader(“pass.txt”); BufferedReader in = new BufferedReader(fstream); password = in.readLine(); password.replace(“Password: “, ” “); System.out.println(password); } catch (IOException e) { e.printStackTrace(); } if (attempt.equals(password)) { System.out.print(“True”); return true; } else System.out.println(“false”); return false; […]

查找给定两个字符串的所有常见子字符串

我遇到了一个问题陈述,找到给定的两个子字符串之间的所有常见子字符串,这样在每种情况下你都必须打印最长的子字符串。 问题陈述如下: 编写程序以查找两个给定字符串之间的公共子字符串。 但是,不要包含较长公共子字符串中包含的子字符串。 例如,给定输入字符串eatsleepnightxyz和eatsleepabcxyz ,结果应为: eatsleep (由于eatsleep nightxyz eatsleep abcxyz ) xyz (由于eatsleepnight xyz eatsleepabc xyz ) a (由于e a tsleepnightxyz eatsleep a bcxyz ) t (由于eatsleepnigh t xyz ea t sleepabcxyz ) 但是,结果集不应包括e e atsleepnightxyz eatsl e epabcxyz ,因为两者都已包含在上述的eatsleep中。 你也不应该包括ea , eat , ats等,因为那些也都被eatsleep所覆盖。 在这里,您不必使用String实用程序方法,如:contains,indexOf,StringTokenizer,split和replace。 我的算法如下:我从蛮力开始,当我提高基本理解时,将切换到更优化的解决方案。 For String S1: Find all the substrings […]

为什么我得到java.lang.StringIndexOutOfBoundsException?

我想编写一个程序,逐步打印单词,直到出现完整的句子。 例如:我需要编写(输入)和输出: 一世 我需要 我需要 我需要写。 这是我的代码: public static void main(String[] args) { String sentence = “I need to write.”; int len = sentence.length(); int numSpace=0; System.out.println(sentence); System.out.println(len); for(int k=0; k<len; k++){ if(sentence.charAt(k)!='\t') continue; numSpace++; } System.out.println("Found "+numSpace +"\t in the string."); int n=1; for (int m = 1; m <=3; m++) { n=sentence.indexOf('\t',n-1); System.out.println("ligne"+m+sentence.substring(0, […]