Tôi có một số mã JavaScript, từ đó tôi cần tìm các chỉ mục bắt đầu + kết thúc của mọi biểu thức chính quy theo nghĩa đen.Liệt kê các cụm từ thông dụng qua UglifyJS
Thông tin đó có thể được trích xuất từ UglifyJS như thế nào?
var uglify = require('uglify-js');
var code = "func(1/2, /hello/);";
var parsed = uglify.parse(code);
Cấu trúc tôi đang nhận biến số parsed
rất phức tạp. Và tất cả những gì tôi cần là một mảng của [{startIdx, endIdx}, {startIdx, endIdx}]
của mọi biểu thức chính quy theo nghĩa đen.
P.S. Nếu ai đó nghĩ rằng cùng một công việc có thể được thực hiện theo cách tốt hơn thông qua UglifyJS, bạn được hoan nghênh đề xuất!
CẬP NHẬT
Tôi biết nếu tôi đào sâu hơn vào cấu trúc phân tích cú pháp, sau đó cho tất cả các biểu hiện thường xuyên Tôi có thể tìm đối tượng:
AST_Token {
raw: '/hello/',
file: null,
comments_before: [],
nlb: false,
endpos: 17,
endcol: 17,
endline: 1,
pos: 10,
col: 10,
line: 1,
value: /hello/,
type: 'regexp'
}
tôi cần phải tìm ra cách để kéo tất cả các đối tượng như từ cấu trúc được phân tích cú pháp, vì vậy tôi có thể biên dịch danh sách các chỉ mục vị trí.
Bạn có bao giờ nói cho chúng tôi biết bạn sẽ làm gì với các chuỗi hoặc chuỗi trích xuất được trích xuất hoặc chỉ mục của chúng khi bạn đã trích xuất chúng? –
@torazaburo nó là một phần của một trình phân tích cú pháp khác đã hoàn thành, ngoại trừ hỗ trợ các biểu thức chính quy một cách chính xác. Tôi đã quản lý để cô lập khoảng 99% của tất cả các trường hợp, nhưng 1% cuối cùng có vẻ như không thể không đánh giá đầy đủ biểu hiện. Tôi chỉ cần biết các cụm từ thông dụng được đặt trong bất kỳ dòng mã nào. –