我正在尝试创建一个正则表达式,我可以在特定的常量单词和句点之间提取名称。
测试句:
欢迎回到库马尔。您最后一次登录是2017年4月10日。
结果: 我想提取" Kumar"从句子。
我确实创建了以下正则表达式:
回到\ S *(\ W +)[^。]
结果如下: "回到Kumar"
我无法找到删除" Back"字和最后的句号。
答案 0 :(得分:0)
如果你想在“Back \ s *”之后找到一个没有实际匹配“Back \ s *”的模式,你可以使用正面的后视。
function editForm() {
var selected_task = gantt.getSelectedTasks();
$.when(selected_task.map(function(task) {
var data = gantt.getTask(task);
return $.ajax({
type: 'PUT',
url: '/api/dashboard/workorder_detail/' + data.workorder_id + '/',
data: postData,
})
}).then(function(results) {
$('#edit_form_modal').modal('hide');
gantt.clearAll();
gantt.load("/api/scheduler/{{ selected_project.id }}/?format=json", "json");
})
}
此解决方案还会将名称与空格匹配,例如欢迎返回pattern = /(?<=^Welcome Back)\s*([\w\s]*)(?=\.)/;
results = "Welcome Back Kumar.".match(pattern);
console.log(results[1]); // "Kumar"
。
您可以在此处试用:https://regex101.com/r/grhMk9/1
答案 1 :(得分:0)
这个正则表达式应该可行。
function formattedDate(d = new Date) {
let month = String(d.getMonth() + 1);
let day = String(d.getDate());
const year = String(d.getFullYear());
if (month.length < 2) month = '0' + month;
if (day.length < 2) day = '0' + day;
return `${day}/${month}/${year}`;
}
基本上仅捕获单词“Back”和之后的第一个句点之间的内容。