相关疑难解决方法(0)

JavaScript:好的部分; 为什么前瞻不好?

我正在阅读Douglas Crockfords Javascript:The Good Parts,我刚刚完成了正则表达式章节.在本章中,他称之为JavaScript \b,积极的前瞻(?=)和消极的前瞻(?!) "不是一个好的部分"

他解释了\b不好的原因(它\w用于单词边界查找,并且\w对于使用unicode字符的任何语言都失败了),这看起来对我来说是一个非常好的理由.

不幸的是,正面和负面前瞻不好的原因被遗漏了,我无法想出一个.掌握正则表达式向我展示了前瞻性所带来的力量(当然也解释了它带来的问题),但我无法想到任何可以将其视为"不是很好的部分"的东西.

任何人都可以解释为什么JavaScript(正|负)前瞻或(正|负)前瞻一般应该被认为是"不好"?

看来我不是唯一有这个问题的人:.

javascript regex regex-lookarounds

17
推荐指数
1
解决办法
3643
查看次数

React / Javascript - 从输入字段(搜索栏)中删除字符串两端的空格以及单词之间的多余空格

我有一个搜索栏,可以从 API 中获取电影以及电影名称 [每次击键]。
我想修剪名称前后的多余空格,并且单词之间只有一个空格。

[它应该将干净的字符串发送到要获取的查询]

例如:
[(我正在输入的内容) ==> (应该查询的内容)]
" gran torino " ==> "gran torino"
" Pirates of the Caribbean " ==> "Pirates of the Caribbean"

搜索字段
状态值

代码:

const fetchMovieList = async (query) => {
        if (query !== '') {
            setStatusFetch('loading');
            try {
                const res = await fetch(`[API]=${query}`);
                const movieListFromApi = await res.json();
                if (movieListFromApi.Response === 'True') {
                    setStatusFetch('resolved');
                    setStatusMovie('found');
                    setMovieList(movieListFromApi.Search);
                } else {
                    setMovieList([]);
                    setStatusMovie('notFound');
                }
                setStatusFetch('idle');
            } catch (error) {
                setStatusFetch('rejected');
            }
        } else { …
Run Code Online (Sandbox Code Playgroud)

javascript whitespace trim removing-whitespace reactjs

3
推荐指数
1
解决办法
2万
查看次数