String Manipulation - Extract Substrings Consisting Of First N-4 And Last Three Characters
Feb 18, 2014
I do have a quick question about string manipulation. You see I've been given a simple exercise that involves asking the user to input a number between 1,000 and 999,999 and displaying the result. Simple enough, but the caveat is that if the user keys in the comma, say 24,000 instead of 24000 for example, the program is not to display the comma. I don't see how to do this without an 'if' statement. The book says the 'if' is not necessary but does offer this hint: "Read the input as a string. Measure the length of the string. Suppose it contains n characters. Then extract the substrings consisting of the first n-4 characters and the last three characters."
What good is n-4 going to do if the string's lengths varies?
Here's what I have written thus far:
import java.util.Scanner;
public class P13
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.print("Please enter a number between 1,000 and 999,999: ");
I am having a problem with the following code. It compiles and runs fine however my output is wrong.
public class SplitString { public static void main(String[] args) { String[] string1 = split("ab#12#453", "#"); String[] string2 = split("a?b?gf#e", "[?#]"); for (int i = 0; i < string1.length; i++) { System.out.print(string1[i] + ",");
[code]....
The split method in the String class returns an array of strings consisting of the substrings split by the delimiters. However, the delimiters are not returned. Implement the following new method that returns an array of strings consisting of the substrings split by the matching delimiters, including the matching delimiters.public static String[] split(String s, String regex)For example, split("ab#12#453", "#") returns ab, #, 12, #, 453 in an array of String, and split("a?b?gf#e", "[?#]") returns a, b, ?, b, gf, #, and e in an array of String.
I have a string and i need to do some manipulation with that. I have tried couple of things but not sure if those are feasible or not. Here is the situation:
I want the value of uid from this string, actually it's user id.
This particular string i want :: aa,bb
Things which i have tried:
I was trying it in this way string start with uid and ends with ou, but in this case user name itself can have ou, so in that case it breaks. Another approach i was thinking of is splitting the string by = which gives me aa'',bb,ou at first position and then i will again split this string to remove ,ou. but i am not sure if this approach is good or not?
I have to write a program that asks the user to enter the name of their favorite city and use string variable to store the input. The program should display the following:
-The number of characters in the city name -The name of the city in all uppercase letters -The name of the city in all lowercase letters -The first character in the name of the city
However, I can't seem to get past the following errors;
Programming Challenge #12.java:37: error: variable cityFirstChar is already defined in method main(String[]) char cityFirstChar = city.charAt(0); ^ 8 errors[CODE ----jGRASP wedge2: exit code for process is 1. ----jGRASP: operation complete. [/CODE]
My code is as follows:
import java.util.Scanner;
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */
I'm looking to get two values from this string. I have tried re formatting and with little success. I read this in from a text file and then tried the below code to extract it. I have also tried
{Deposit=100.00, Fees Paid=5.00}
I am just looking to get the 100.00 and the 5.00. I tried using this code below but it separated it into Comma and put it in an array which is probably what im not looking for.
[code] final Pattern pattern = Pattern.compile("[=st]"); final String[] result = pattern.split(st2); System.out.println(Arrays.toString(result)) [code]
consider this statement from a jsp file(there are many more statements like this in jsp file..) Statement -
<h:dataGrid something styleclass="styleclass1" something1 onClick="event" something2 <% this is a scriplet tag %> something3 style="style1">
<h:output text>hello i am text</h:output text> </h:dataGrid>
What I want is to extract(and store it somewhere) the part from "<" to ">" where:
< - is the one in "<h:dataGrid" > - is the one in "style1>" and not the('>') one that appears in the end of "</h:dataGrid>" or "<h:output text>" or "</h:output text>"
Problem is the text b/w && is in multi-line...&& there are scriplet tags in between them.. so i don't know how to extract this particular string.. i tried using using some regular expressions but couldn't find the exact one..
(this was just an example && instead of this "" tag it can be anything like again in this line :
<h:output text>hello i am text</h:output text>
I want to extract the string from "<" till ">" where :
< - is the one in starting of "<h:output text>" > - is the one in ending of "<h:output text>" and not the one in "</h:output text>"
However the difference b/w this example and the above mentioned one is that this one is not multi-line and doesn't contains any scriptlet tags)....
I am currently trying to make a calculator in Java. I want to use the String split method to tokenize the string of characters inputted. I thought I was using the String split method wrongly, because I had surrounded the characters I wanted to delimit with square brackets. However, when I removed the square brackets, the code threw an exception when I pressed the equal button. The exception was a PatternSyntaxException exception. Am I using the String split method wrongly? And why is the exception thrown? Here is my code:
import javax.swing.*;//import the packages needed for gui import java.awt.*; import java.awt.event.*; import java.util.Arrays; import java.util.List; import static java.lang.Math.*; public class CalculatorCopy { public static void main(String[] args) {
I'm trying to loop through a string and depending on the character, add a JLabel to a game. The problem is the character 'L' represents a lantern but is also used in the reply the game gives which is "LOOKREPLY". I've tried to use some code to ignore the LOOKREPLY bit but it's not working. Here's what I've tried.
But the first image on all of the JLabels is always a lantern, which is what L represents. As it's only 1 lantern this leads me to believe that it's ignoring the first 'L' but for some reason it's not ignoring the 'L' at the end of LOOKREPLY.
As of right now my code can take characters from a string to an array from a string like "ABCD" but the project says I have to take it from a string like "A B C D" how can I correct my code to grab the characters from a single spaced line?
Scanner sc = new Scanner(System.in); System.out.println("Enter Order of Cars:"); String carsInput = sc.next(); int x = carsInput.length(); int[] cars = new int[x]; for (int i=0; i < cars.length; i++) { cars[i] = carsInput.charAt(i)-64; }
So what my program is supposed to do is take a number inputted by the use and then take a phrase. It then changes that phrases letter by the number inputted prior for example if you type in 2 as your int and Hello as your phrase you should get JGNNQ, which i can do. but the problem is that when i run it, it outputs like this:
J G N N Q
As separate characters how can I combine those characters in 1 string so it looks like JGNNQ? this is my code
import java.util.Scanner; public class Dcod_MAin { private static final Object[] String = null; public static void main(String[] args){ Scanner input = new Scanner (System.in); System.out.println("What is the day of the month"); int shift;
I need to make a string filled with naughts and crosses like this one : "xxx ooo xox". There are 3 groups separated with a space. how to fill the string randomly ?
I just need to write a simple program/function that replaces certain letters from a string (i.e. censor( "college", "aeiou" ) returns "cllg"). I'm trying to get the code right first, and then write a function for it.I basically just thought that I would iterate over the first string, and once I had the first character, I would then iterate over the second string, to see if the character exists. I'm getting a "dead code" error on my second loop because I put the second "break."
public class ap { public static void main(String [] args){ String s = "Hello"; String s2 = "aeiou";
I have to check a String input from the user in the form of firstName lastName (i.e. John Smith). I have to check for an exception called NonAlphabeticCharacterException that gets thrown if there is anything but a number in that string. This is what I have right now but should I create an array of char for the alphabet and then check the whole string for non alphabetic characters?
for(int i=0; i<name.length(); i++) { if()){ throw new NonAlphabeticCharactersException("Non-alphabetic character found"); } }
I am trying to count the number of non_blank characters in a string. If there are no leading blank spaces it works fine but say i add three spaces in front it doubles the non blank characters.
import java.io.*; import java.util.*; public class countCharacters { public static void main(String[] args) throws Exception { String str1; int count; count = 0;
I am writing a program for my college class that does the following:
Reads a text file that consists of words from a-z. The content read from the file is displayed in the JTextArea, while the user can filter the search results based on what they input. For example, if the user enter's "a" then the JTextArea is updated with all words that start with the letter "a" only. Also the user can enter a substring or the whole word and the respective result will be only the words that match the user's input.
The Problem and question I have is what would be the best way to go about filtering a file of about 27,000 words based on user input. I tried using an arraylist but the problem is it took forever to update the JTextArea, which is not good. Also I am new to using JSwing so I may not be aware of a component that would make this easier.
Here is the code:
Note: the question lies within the actionPerformed method.
I am trying to do a program that takes all of the chars from a string and orders them in alphabetical order. It works fine, but when a is a last letter of a string it isn't being sorted.
Example: bcba = bbca, omnibus = bimnous (here u is in wrong place)
Here is my code:
public class sorty{ public static void sort(char[] a, int low, int high){ int i = low; int j = high; if (j - i < 2) return; int m = (j+i)/2; char p = a[m];
Error:public String front3(String str) { ^^^^^^^^^^^^^^^^^^ This method must return a result of type String
Possible problem: the if-statement structure may theoretically allow a run to reach the end of the method without calling return. Consider adding a last line in the method return some_value; so a value is always returned.
I am trying to change an input String to an array of characters, but it only stores the word before the space into the array. Here is the code:
Scanner scanner = new Scanner(System.in); System.out.println(" Enter text: " ); String text = scanner.next(); char[] characterArray = text.toCharArray(); // convert string to array of characters String char = ""; for( i = 0; i < characterArray.length; i++) { char = char + characterArray[i] } System.out.println(char);
Just typing hello gives me hello, but when I type hello world it does not type in the word "world".I am trying to change an input String to an array of characters, but it only stores the word before the space into the array.Here is the code:
Scanner scanner = new Scanner(System.in); System.out.println(" Enter text: " ); String text = scanner.next(); char[] characterArray = text.toCharArray(); // convert string to array of characters String char = ""; for( i = 0; i < characterArray.length; i++) { char = char + characterArray[i] } System.out.println(char);
Just typing hello gives me hello, but when I type hello world it does not type in the word "world".
I was trying to create a java program which can remove the repeated characters in a String. For ex-
Input: kamehamehaaa Output: kameh
Here is my code:-
import java.util.Scanner; class replace { public static void main (String args[]) { Scanner br = new Scanner(System.in); System.out.println("Enter a word");
[Code] ....
On executing the program, StringOutOfBoundsIndex error occurs.
I'm attempting a small program as I'm teaching myself the ropes. In it, I need to compare one string (the base) to another which is just the base string that's had it's characters shuffled.
Java Code:
String base = "ABCDEFG" String shuffled = "CDAFBEG" mh_sh_highlight_all('java');
What I need to do is run a loop that shuffles the base string each time, but compares and saves any characters that match in the correct location. For example, if shuffled = "CDAFBEG", then the G would be "locked" in place and the rest of the characters shuffled and looped back to the comparison.
I have all the code I need for shuffling the string, but I'm not sure how I would go about comparing each character and then also locking it in place. I get the basics, I think, of needed to use several variables.
I know that I need to use substrings, but I'm not sure how to implement them. All of the names are red in from the file "employees.txt".
Using the file Employees.txt
1) Scan the file and create user ids for each person according to the following scheme
a) Take the first and last character of the first name, convert them to upper case
b) Take the first and last character of the last name, convert them to upper case
c) Concatenate the results from a and b i) Example: John Brown would yield => JNBN
d) Add the length of the first name to the length of the last name, disregarding spaces
e) Concatenate the result from step c to the result of step d i) Example: John Brown would yield => JNBN9
f) Concatenate a four digit number to the end of this. i) The numbers should begin with 0000 and increment by 1 ii) Example: If John Brown is the fifth name in the list the resulting UserID would be => JNBN90004
2) Display the user ids in four columns with a width of 14