(str)
| 2297 | |
| 2298 | // 格式化字符串值,如果是URL则转换为链接 |
| 2299 | function formatStringValue(str) { |
| 2300 | // URL正则表达式,匹配 http/https/ftp 协议的URL |
| 2301 | const urlRegex = /^(https?:\/\/|ftp:\/\/)[^\s<>"'\\]+$/i; |
| 2302 | |
| 2303 | if (urlRegex.test(str)) { |
| 2304 | // 如果是URL,转换为链接 |
| 2305 | const escapedUrl = htmlspecialchars(str); |
| 2306 | return '<a href="' + escapedUrl + '" target="_blank" rel="noopener noreferrer" data-is-link="1" data-link-url="' + escapedUrl + '">' + htmlspecialchars(str) + '</a>'; |
| 2307 | } else { |
| 2308 | // 直接显示解析后的字符串内容,不需要重新转义 |
| 2309 | // 这样可以保持用户原始输入的意图 |
| 2310 | return htmlspecialchars(str); |
| 2311 | } |
| 2312 | } |
| 2313 | |
| 2314 | function isBigNumberLike(value) { |
| 2315 | return value && typeof value === 'object' && |
no test coverage detected