题解 | #坐标移动#
坐标移动
https://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29
import java.util.*; import java.util.regex.Pattern; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 while (in.hasNext()) { // 注意 while 处理多个 case String input = in.next(); int x = 0, y = 0; // 将字符串按照“;”分割为字符数组。 String[] parts = input.split(";"); for (String part : parts) { //正则表达式匹配 String pattern = "^[ADWS][0-9]{1,5}$"; if (Pattern.matches(pattern, part)) { // 从第一个字符后进行分割字符串 String numberPart = part.substring(1); // 将截取的部分转化为整数 int number = Integer.parseInt(numberPart); if (part.charAt(0) == 'A') { x -= number; } if (part.charAt(0) == 'D') { x += number; } if (part.charAt(0) == 'S') { y -= number; } if (part.charAt(0) == 'W') { y += number; } } } System.out.println(x+","+y); } } }#正则表达式匹配字符串#