lua 判断字符串是否包含子字符串(点符号查找)

一、string.find 方法

lua代码

Lua 复制代码
function containsDot(str)  
    local pos = string.find(str, ".")  
    if pos then  
        return true  
    else  
        return false  
    end  
end  
  
-- 测试函数  
local testString1 = "hello.world"  
local testString2 = "helloworld"  
  
print(containsDot(testString1)) -- 输出: true  
print(containsDot(testString2)) -- 输出: true,  为什么呢?

二、注意事项

1、匹配点(.)会返回true

在正则表达式中,点(.)是一个特殊字符,它匹配除了换行符之外的任何单个字符。因此,我们使用 %. 来匹配实际的点字符(.),其中 % 是 Lua 中正则表达式中的转义字符。

Lua 复制代码
function containsDot(str)  
    local pos = string.find(str, "%.")  --使用 %. 来匹配实际的点字符
    if pos then  
        return true  
    else  
        return false  
    end  
end  
  
-- 测试函数  
local testString1 = "hello.world"  
local testString2 = "helloworld"  
  
print(containsDot(testString1)) -- 输出: true  
print(containsDot(testString2)) -- 输出: false
相关推荐
武子康5 小时前
Java-109 深入浅出 MySQL MHA主从故障切换机制详解 高可用终极方案
java·数据库·后端·mysql·性能优化·架构·系统架构
bdgtd881786 小时前
动态修补C扩展模块的函数指针有哪些风险?安全的修补方案是什么?
c语言·开发语言·安全
luquinn6 小时前
实现统一门户登录跳转免登录
开发语言·前端·javascript
Forward♞6 小时前
Qt——界面美化 QSS
开发语言·c++·qt
##学无止境##8 小时前
解锁Java分布式魔法:CAP与BASE的奇幻冒险
java·开发语言·分布式
超级无敌永恒暴龙战士8 小时前
MySQL-delete tableName from ...
数据库·mysql
做一位快乐的码农9 小时前
基于Spring Boot的旅行足迹分享社区的设计与实现/基于java的在线论坛系统
java·开发语言·spring boot
2301_7736386310 小时前
Kubernetes部署MySQL主从复制
mysql·容器·kubernetes
小猿姐12 小时前
KubeBlocks For MySQL 云原生设计分享
mysql·云原生·架构
Java水解13 小时前
MySQL 中的 UPDATE 语句
后端·mysql