以下是一个示例代码,用于过滤字符串中的非英文和阿拉伯数字:

public interface LanguageFilter {
    String filter(String input);
}

public class LanguageFilterImpl implements LanguageFilter {
    @Override
    public String filter(String input) {
        StringBuilder filteredText = new StringBuilder();
        for (char c : input.toCharArray()) {
            if (Character.isLetterOrDigit(c) && (Character.UnicodeScript.of(c) == Character.UnicodeScript.LATIN ||
                    Character.UnicodeScript.of(c) == Character.UnicodeScript.ARABIC)) {
                filteredText.append(c);
            }
        }
        return filteredText.toString();
    }
}

public class Main {
    public static void main(String[] args) {
        String text = 'Hello, 你好, 123, привет, สวัสดี, مرحبا';
        LanguageFilter filter = new LanguageFilterImpl();
        String filteredText = filter.filter(text);
        System.out.println(filteredText); // Output: Hello123مرحبا
    }
}

在上述示例中,LanguageFilter接口定义了一个filter方法,用于过滤字符串中的非英文和阿拉伯数字。LanguageFilterImpl是实现了LanguageFilter接口的具体过滤器类,它会遍历输入字符串的每个字符,判断是否为英文字符或阿拉伯数字,然后将其添加到一个StringBuilder中。最后,返回过滤后的字符串。

Main类的main方法中,我们创建了一个示例字符串text,然后使用LanguageFilterImpl类的实例来过滤这个字符串。最后,我们将过滤后的字符串打印输出。输出结果是只保留了英文和阿拉伯数字的字符串:'Hello123مرحبا'。

Android 开发:过滤字符串保留英文和阿拉伯数字

原文地址: https://www.cveoy.top/t/topic/pVu6 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录