i want outside assistance within this htaccess code

RewriteRule ^([0-9a-z\-\_]+)?$ /index.php?url=$1 [L,QSA,NC]

This code change all rewrite web addresses from

/test-publish-title

/index.php?url=test-publish-title

however it affect all folders

mean

i've vb within this path

site.com/vb

however the url apper like

site.com/vb/?url=

how do i fix this

to become site.com/vb/index.php or site.com/vb

The next rewrite is only going to occur when the request not indicates a legitimate directory or file:

RewriteEngine on
RewriteBase /
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([0-9a-z\-\_]+)?$ /index.php?url=$1 [L,QSA,NC]

To disable any rewrites within your /vb folder you could include a .htaccess into that folder and turn from the rewrite engine:

RewriteEngine off