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
相关推荐
学逆向的3 分钟前
扩展PE头属性说明
开发语言·网络安全·pe
秋名RG11 分钟前
Java 基础语法
java·开发语言
码行山野赴时序归途16 分钟前
C 语言文件操作完全指南:从打开到关闭
c语言·开发语言
2501_9378609422 分钟前
Java 文件操作与IO(下):字节流、字符流实战IO读写
java·开发语言·python
事圆则缓29 分钟前
Kotlin 高阶工程化与 Android 深入实践
android·开发语言·kotlin
Gent_倪30 分钟前
MySQL 与 Hive 语法异同点详解
数据库·hive·mysql
老周聊架构34 分钟前
Flink 连接器与生态:Kafka Offset 提交修复与 MySQL Binlog 延迟指标
mysql·flink·kafka
驭渊的小故事35 分钟前
java抽奖项目-奖品上传中传递参数类型的错误
java·开发语言
名字还没想好☜38 分钟前
Go 时间格式化为什么用 2006-01-02:time.Format/Parse 的参考时间、时区与解析踩坑
开发语言·后端·golang·go
Dream Cosmos41 分钟前
C++ 多态下篇:虚函数表、动态绑定与多态底层原理
开发语言·c++