我想在ruby中使用正则表达式来捕获纯文本电子邮件地址,但不要使用mailto链接标记包围的电子邮件地址(例如<a href="" class="" >a@b.com</a>
),尝试source.gsub(/(?!<$)[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}/i)
但是这不起作用
答案 0 :(得分:0)
// variable
// -----------------------------------------------------------------------------
var gulp = require('gulp');
var sass = require('gulp-sass');
var browserSync = require('browser-sync').create();
// task
// -----------------------------------------------------------------------------
gulp.task('styles', function() {
return gulp.src([
'./src/assets/styles/*.scss'
], {
base: './src/assets/styles/'
})
.pipe(sass().on('error', sass.logError))
.pipe(gulp.dest('./dist/assets/styles/'))
.pipe(browserSync.stream());
});
gulp.task('browserSync', function() {
browserSync.init({
server: {
baseDir: './dist/'
}
});
gulp.watch('./dist/*.html').on('change', browserSync.reload);
gulp.watch('./src/assets/styles/**/*.scss', ['styles']);
gulp.watch('./dist/assets/scripts/*.js').on('change', browserSync.reload);
});
类似于/(\w+@[\w.-]+|\{(?:\w+, *)+\w+\}@[\w.-])(?!<\/a>)*$/i
这是正则表达式声明,我冒昧地使用了不同的电子邮件选择器。
source.gsub(/(\w+@[\w.-]+|\{(?:\w+, *)+\w+\}@[\w.-])(?!<\/a>)*$/i)
基本上会在(?!<\/a>)*$
结束时忽略它。如果您希望每行/文档有多个电子邮件地址,那么首先过滤掉任何</a>
代码可能会更有效。