Вы могли всегда просто или downcase строки сначала.
string title = "string":
title.ToUpper().Contains("STRING") // returns true
ой, просто видел, что в последний раз укусил. Нечувствительное к регистру выдерживает сравнение, был бы *
, вероятно *
, делают то же так или иначе, и если производительность не является проблемой, я не вижу проблемы с созданием прописных копий и сравнением их. Я, возможно, поклялся, что однажды видел, что нечувствительное к регистру выдержало сравнение однажды...
Я устанавливаю все свои Perl полностью в их собственный каталог, так что они ничего не разделяют с другими Perl. Для этого вы просто указываете сценарию Configure
, где все установить. Мне нравится / usr / local / perls :
% ./Configure -des -Dprefix=/usr/local/perls/perl-5.x.y
Когда я делаю это для нескольких версий, я получаю каталог с отдельными установками.
% ls -1 /usr/local/perls perl-5.10.0 perl-5.10.1 perl-5.6.2 perl-5.8.8
Все они имеют свои собственные каталоги bin и lib:
% ls -1 /usr/local/perls/perl-5.10.0 bin lib man
Большинство обычных инструментов выяснят, что делать, если вы вызовете их с разными perl:
/usr/local/perls/perl-5.10.0/bin/perl /usr/local/bin/cpan
Однако вы можете взять perl, который хотите использовать, большинство и поставьте его первым на своем пути. Я просто создаю символическую ссылку на / usr / local / bin / perl, но вы также можете добавлять каталоги в PATH.
perlbrew делает многое из этого для вас и перемещает символические ссылки, чтобы создать одну из них perl по умолчанию. Я не Но я не использую его, потому что это не облегчает мне жизнь. Но решать вам сам.
Разделите их на их собственные каталоги для конкретных версий, а затем создайте символическую ссылку perl
на версию, которую вы хотите использовать в данный момент. Вот как работает установка нескольких JRE / JDK, поэтому, похоже, это имеет смысл и для установок Perl.
Вам действительно следует установить разные версии в разные каталоги.
Когда я хочу попробовать несколько версий пакета, которых нет в виде пакетов для моего любимого дистрибутива Linux, я использую stow
или xstow
как менеджер пакетов для бедняков:
/ usr / local / stow
/ usr / local / stow / $ PACKAGE- $ VERSION
/ usr / local
: stow -d / usr / local / stow $ PACKAGE- $ VERSION
stow -d / usr / local / stow -D $ PACKAGE- $ VERSION
stow
выполняет свою работу, создавая символические ссылки и управляя ими, и может обнаруживать конфликты.
Здесь, на работе, мы разрабатываем несколько версий Perl, и отдельные каталоги - это лучший вариант. Мы создали небольшую команду оболочки, которая исправляет символические ссылки и переменные среды, чтобы вы могли легко использовать нужный perl.
Если вы беспокоитесь о том, что забыли, какой perl используется, вы можете добавить в такой сценарий номер версии в приглашении оболочки.
Хотя установка в разные каталоги обычно является лучшим способом, вы можете использовать переключатель Configure -Dversiononly
, чтобы использовать один каталог и включить триплет версии во все имена путей (кроме файлов man, которых вы, вероятно, вообще не хотели бы устанавливать),
например perl5.10.0
, cpan5.10.0
, perldoc5.10.0
и т. д.