用Java任意输入只含大小写字母的字符串,输出所有大写字母
时间: 2023-05-19 13:05:28 浏览: 113
好的,以下是Java代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
if (Character.isUpperCase(c)) {
System.out.print(c + " ");
}
}
}
}
```
这段代码可以输入一个只含大小写字母的字符串,然后输出其中所有的大写字母,每个字母之间用空格隔开。
相关问题
用java编写实现任意输入的字符串中的字符字母大小写转换,并逆序输出
可以使用Java中的Scanner类来实现任意输入的字符串中的字符字母大小写转换,并逆序输出。具体实现如下:
```java
import java.util.Scanner;
public class StringReverse {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
StringBuilder sb = new StringBuilder();
for (int i = str.length() - 1; i >= 0; i--) {
char c = str.charAt(i);
if (Character.isLowerCase(c)) {
c = Character.toUpperCase(c);
} else if (Character.isUpperCase(c)) {
c = Character.toLowerCase(c);
}
sb.append(c);
}
System.out.println(sb.toString());
}
}
```
这段代码使用Scanner类获取用户输入的任意字符串,并将其中的字符逆序输出,同时把小写字母转换成大写字母,把大写字母转换成小写字母。
Java @Pattern 注解 包含大小写字母数字 长度8-16位 正则表达式
可以使用以下正则表达式来实现:
```
^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)[a-zA-Z\\d]{8,16}$
```
解释一下:
- `^`:匹配输入字符串的开头
- `(?=.*[a-z])`:匹配任意字符,但必须包含至少一个小写字母
- `(?=.*[A-Z])`:匹配任意字符,但必须包含至少一个大写字母
- `(?=.*\\d)`:匹配任意字符,但必须包含至少一个数字
- `[a-zA-Z\\d]{8,16}`:匹配8到16位大小写字母和数字的组合
- `$`:匹配输入字符串的结尾
这个正则表达式要求密码必须包含大小写字母和数字,并且长度在8到16个字符之间。