Java programming Exercises: Check if a given string is a mathematical expression
Java Regular Expression: Exercise-29 with Solution
Write a Java program to check if a given string is a Mathematical Expression or not.
Sample Solution:
Java Code:
public class test {
public static void main(String[] args) {
String text ="10";
System.out.println("Original string: "+text);
System.out.println("Check if the said string is a mathematical expression or not: "+validate(text));
text ="10 + 20";
System.out.println("Original string: "+text);
System.out.println("Check if the said string is a mathematical expression or not: "+validate(text));
text =" 10 * 20 * 30 ";
System.out.println("Original string: "+text);
System.out.println("Check if the said string is a mathematical expression or not: "+validate(text));
text ="-10 * 20 - -30";
System.out.println("Original string: "+text);
System.out.println("Check if the said string is a mathematical expression or not: "+validate(text));
text ="-10 * 20 - -2e4";
System.out.println("Original string: "+text);
System.out.println("Check if the said string is a mathematical expression or not: "+validate(text));
text ="100 +";
System.out.println("\nOriginal string: "+text);
System.out.println("Check if the said string is a mathematical expression or not: "+validate(text));
text ="100 + foo";
System.out.println("Original string: "+text);
System.out.println("Check if the said string is a mathematical expression or not: "+validate(text));
text =" 10 *+ 20 * 30 ";
System.out.println("Original string: "+text);
System.out.println("Check if the said string is a mathematical expression or not: "+validate(text));
}
public static boolean validate(String text) {
return text.matches("((?:(?:^|[-+_*/])(?:\\s*-?\\d+(\\.\\d+)?(?:[eE][+-]?\\d+)?\\s*))+$)");
}
}
Sample Output:
Original string: 10 Check if the said string is a mathematical expression or not: true Original string: 10 + 20 Check if the said string is a mathematical expression or not: true Original string: 10 * 20 * 30 Check if the said string is a mathematical expression or not: true Original string: -10 * 20 - -30 Check if the said string is a mathematical expression or not: true Original string: -10 * 20 - -2e4 Check if the said string is a mathematical expression or not: true Original string: 100 + Check if the said string is a mathematical expression or not: false Original string: 100 + foo Check if the said string is a mathematical expression or not: false Original string: 10 *+ 20 * 30 Check if the said string is a mathematical expression or not: false
Flowchart :
Java Code Editor:
Contribute your code and comments through Disqus.
Previous: Reverse the words of length higher than 3 in a given string.
Next: Insert a dash between an upper case letter and a lower case letter in a given string.What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
Java: Tips of the Day
What is the best way to filter a Java Collection?
Java 8 (2014) solves this problem using streams and lambdas in one line of code:
List<Person> beerDrinkers = persons.stream() .filter(p -> p.getAge() > 16).collect(Collectors.toList());
Use Collection#removeIf to modify the collection in place. (Notice: In this case, the predicate will remove objects who satisfy the predicate):
persons.removeIf(p -> p.getAge() <= 16);
lambdaj allows filtering collections without writing loops or inner classes:
ListbeerDrinkers = select(persons, having(on(Person.class).getAge(), greaterThan(16)));
Ref: https://bit.ly/3uwYid6
- New Content published on w3resource:
- HTML-CSS Practical: Exercises, Practice, Solution
- Java Regular Expression: Exercises, Practice, Solution
- Scala Programming Exercises, Practice, Solution
- Python Itertools exercises
- Python Numpy exercises
- Python GeoPy Package exercises
- Python Pandas exercises
- Python nltk exercises
- Python BeautifulSoup exercises
- Form Template
- Composer - PHP Package Manager
- PHPUnit - PHP Testing
- Laravel - PHP Framework
- Angular - JavaScript Framework
- Vue - JavaScript Framework
- Jest - JavaScript Testing Framework