文本框输入多个IP用逗号隔开js校验方法

这里提供两种方法:

 

   1.正则表达式

       // 多IP的验证
jQuery.validator.addMethod("s_ips", function(value, element) {
var s_ips = /^(?:(?:^|,)(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(?:\.(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})+$/;
return this.optional(element) || (s_ips.test(value));
}, "格式不正确");

 

   2.js function手动校验

     

  function testIpList() {
    // 把 ips 按逗号拆成 IP 数组,分别进行验证
    // every 表示每个 ip 验证通过才算通过
    var ips = $("#ips").val();
    return ips.split(",")
        .every(ip => {
            // 把每个 IP 拆成几段
            const segments = ip.split(".");
            // 如果是精确的 4 段而且每段转换成数字都在 1~255 就对了
            
            if(segments.length === 4
                && segments
                    .map(segment => parseInt(segment, 10) || 0)
                    .every(n => n >= 0 && n <= 255)){
                    alert("true");
                    return true;
                    }
                    alert("false");
            return false;
        });

    

测试demo 

好的,您可以使用Java的Swing库来开发这样的GUI应用程序。以下是一个简单的示例代码,可以实现您所需的功能: ```java import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Arrays; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextArea; import javax.swing.JTextField; public class ScoreSortingGUI extends JFrame { private static final long serialVersionUID = 1L; private JTextField inputField; private JTextArea outputArea; public ScoreSortingGUI() { super("Score Sorting"); inputField = new JTextField(20); JButton sortButton = new JButton("Sort"); sortButton.addActionListener(new SortButtonListener()); JPanel inputPanel = new JPanel(); inputPanel.add(inputField); inputPanel.add(sortButton); outputArea = new JTextArea(10, 20); outputArea.setEditable(false); getContentPane().setLayout(new BorderLayout()); getContentPane().add(inputPanel, BorderLayout.NORTH); getContentPane().add(outputArea, BorderLayout.CENTER); pack(); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } private class SortButtonListener implements ActionListener { @Override public void actionPerformed(ActionEvent e) { String inputText = inputField.getText(); String[] scores = inputText.split(","); double[] scoresArray = new double[scores.length]; for (int i = 0; i < scores.length; i++) { try { scoresArray[i] = Double.parseDouble(scores[i]); } catch (NumberFormatException ex) { // Ignore invalid scores } } Arrays.sort(scoresArray); StringBuilder outputText = new StringBuilder(); for (int i = scoresArray.length - 1; i >= 0; i--) { outputText.append(scoresArray[i]); outputText.append("\n"); } outputArea.setText(outputText.toString()); } } public static void main(String[] args) { new ScoreSortingGUI(); } } ``` 这个GUI应用程序包含一个文本框和一个按钮,文本框用于输入逗号隔开的分数,按钮用于触发排序操作。当用户点击按钮时,程序将获取文本框中的文本并将其解析为一个分数数组。然后,程序将该数组按照从大到小的顺序进行排序,并将排序结果显示在另一个文本框中。 请注意,这个示例程序使用了Java的接口机制。具体来说,它使用了`ActionListener`接口来处理按钮点击事件。当用户点击按钮时,程序会调用`actionPerformed`方法,该方法在`SortButtonListener`类中被实现。这种使用接口的方式可以使程序更加灵活和可扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值