javascript - 文本区域的正则表达式
问题描述
我正在尝试在我的 Angular 8 应用程序中为 textarea 构建一个正则表达式。textarea 应允许所有字符,但不应允许开头为空字符。我用过 3 但都有以下问题:
^(?!\s*$).+
-- 如果用户使用回车键进入文本区域的下一行,这不起作用。^[^\s]+(\s+[^\s]+)*$
-- 如果两个单词之间有空格,这将不起作用。^(?!\s*$)[-a-zA-Z0-9' '.,\(\)&+\/]{1,}$
-- 如果用户使用回车键进入文本区域的下一行,这不起作用。
谁能帮我这个?
解决方案
您可以使用
/^\S.*(?:\r?\n\S.*)*$/u
请参阅正则表达式演示。
细节
^
- 字符串的开始\S.*
- 非空格和一行的其余部分(?:\r?\n\S.*)*
- 零次或多次重复\r?\n
- CRLF 或 LF 换行序列\S.*
- 非空格和一行的其余部分
$
- 字符串结束。
推荐阅读
- java - Java 程序测试使用 Groovy 使用 maven 获得 0 测试运行
- python - CSV Python 阅读器
- c - 如何在 C 中创建指向现有文件或目录的硬链接?
- angular - 未正确添加授权标头
- powerapps - 如何根据 Powerapps 中的其他列提取列项?
- javascript - Reactjs-Redux:即使在用户登录后,mapStateToProps 也会返回 user is authenticated as first,然后是 true
- java - 二叉树 - 离根最远,最右边
- javascript - 使用 lodash 将数组合并到对象
- android - 创建了太多的 Smack Cache Executor 线程
- java - 如何在 SpringMVC 控制器方法中提交或回滚事务