此提交包含多项变更: 1. 新增鸿蒙平台支持,完善设备检测与数据库适配 2. 替换旧版分享插件API为SharePlus 3. 批量迁移StateNotifier到Notifier以适配新版Riverpod 4. 修复zip编码判断、图表API参数等bug 5. 更新应用图标、启动页资源与多尺寸适配图标 6. 调整Android最小SDK版本与应用名称 7. 优化日志打印与正则表达式使用 8. 修正编辑器画布样式初始化与配置逻辑 9. 更新依赖与CI插件配置
49 lines
1.5 KiB
Dart
49 lines
1.5 KiB
Dart
/// ============================================================
|
||
/// 闲言APP — 正则表达式工具函数
|
||
/// 创建时间: 2026-05-16
|
||
/// 更新时间: 2026-05-16
|
||
/// 作用: 封装 RegExp 构造,消除 Dart 3.11+ 废弃警告
|
||
/// Dart 3.11 中 RegExp 类被标记为将变为 final(不可继承),
|
||
/// 所有 RegExp 引用均触发 deprecated 警告。
|
||
/// 通过工厂函数集中管理,仅本文件忽略废弃警告。
|
||
/// 上次更新: 返回类型改为 RegExp,保留 hasMatch/firstMatch 能力
|
||
/// ============================================================
|
||
|
||
// ignore_for_file: deprecated_member_use
|
||
import 'dart:core';
|
||
|
||
/// 创建正则表达式
|
||
///
|
||
/// 替代 `RegExp(source, ...)` 构造调用,消除 Dart 3.11+ 的
|
||
/// `deprecated_member_use` 警告。返回 RegExp 以保留
|
||
/// `hasMatch` / `firstMatch` / `allMatches` 等方法。
|
||
///
|
||
/// 示例:
|
||
/// ```dart
|
||
/// // 旧写法(触发警告):
|
||
/// text.replaceAll(RegExp(r'<[^>]*>'), '')
|
||
/// RegExp(r'\d+').hasMatch(text)
|
||
///
|
||
/// // 新写法(无警告):
|
||
/// text.replaceAll(regex(r'<[^>]*>'), '')
|
||
/// regex(r'\d+').hasMatch(text)
|
||
/// ```
|
||
RegExp regex(
|
||
String source, {
|
||
bool multiLine = false,
|
||
bool caseSensitive = true,
|
||
bool unicode = false,
|
||
bool dotAll = false,
|
||
}) => RegExp(
|
||
source,
|
||
multiLine: multiLine,
|
||
caseSensitive: caseSensitive,
|
||
unicode: unicode,
|
||
dotAll: dotAll,
|
||
);
|
||
|
||
/// 转义正则表达式特殊字符
|
||
///
|
||
/// 替代 `RegExp.escape(text)`,消除 Dart 3.11+ 的废弃警告。
|
||
String regexEscape(String text) => RegExp.escape(text);
|