表示数字

将一个字符串中所有的整数前后加上符号“*”,其他字符保持不变。连续的数字视为一个整数。

输入描述:
输入一个字符串
输出描述:
字符中所有出现的数字前后加上符号“*”,其他字符保持不变
示例1

输入

Jkdi234klowe90a3

输出

Jkdi*234*klowe*90*a*3*

Java 编程

package cn.net.javapub.demo2.demo;

/**
 * @author: shiyuwang
 */

import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String str = "";
        while ((str = br.readLine()) != null) {
            char[] c = str.toCharArray();
            StringBuilder sb = new StringBuilder();
            int i = 0;
            while (i < c.length) {
                if (c[i] >= '0' && c[i] <= '9') {
                    sb.append("*");
                    sb.append(c[i]);
                    while (++i < c.length && c[i] >= '0' && c[i] <= '9') {
                        sb.append(c[i]);
                    }
                    sb.append("*");
                } else {
                    sb.append(c[i]);
                    i++;
                }
            }
            System.out.println(sb.toString());
        }
    }
}

展示效果:

华为OD机试 - 表示数字 (Java 2024 E卷 100分)_算法