How to change file extension with Python?
Extracting extension from filename in Python
JavaScript RegExp objects I try to write a simple Markdown parser in JavaScript. Therefore I want to check for the [link content][link id] syntax. I use the following code:  data = data.replace( /\[(.*?)\][ ]*\[([0-9]+)\]/g, '&lt;a href="$2"&gt;$1&lt;/a&gt;' );   It works well, but now I want to do this with a RegExp object. So I set up the following bit of code:  var r = new RegExp( '\[(.*?)\][ ]*\[([0-9]+)\]', 'g' ); data = data.replace( r, '&lt;a href="$2"&gt;$1&lt;/a&gt;' );   But it doesn't work. It even says that my regular expression (which works since the first example does a good job) is invalid:     unmatched ) in regular expression   I think it must have to do with some RegExp-object peculiarities I am not aware of. What am I doing wrong and how can the problem be solved? I had parked my follower at an inn with a bunch of valuable items that I didn't want to carry. I guess I have been out a bit too long as this message appears:      Your follower tires of waiting and leaves.    There have been other situations where my follower has mysteriously disappeared as well.  How can I find my follower when they get up and leave or disappear into thin air? Can you re-equip equipment to the same creature? Which of these is grammatically correct?       1. a) He has been working under my direct supervision since the last two years           1. b) He has been working under my direct supervision for the last two years            2. a) He has not met her since a very long time        2. b) He has not met her in a very long time    Which of the above are correct? Are all of them correct? My friend says 1.b and 2.b are correct, but I am not sure. Or is this an American English and British English thing? (He mostly goes by American English) I flagged a post and (choose one)   my flag was marked as helpful, yet nothing was done my flag was marked as declined, yet the post was deleted/edited/closed   Why? Log of products to sum of logs Concatenating a string and primary key Id while inserting Maximum Likelihood Estimate with different parameters Suppose that X and Y are independent Poisson distributed values with means $\theta$ and $2\theta$, respectively. Consider the combined estimator of $\theta$ $$ \tilde{\theta} = k_1 X + k_2 Y $$ where $k_1$ and $k_2$ are arbitrary constants.   Find the condition on $k_1$ and $k_2$ such that $\tilde{\theta}$ is an unbiased estimator of $\theta$. For $\tilde{\theta}$ unbiased, show that the variance of the estimator is minimized by taking $k_1 = 1/3$ and $k_2 = 1/3$. Given observations $x$ and $y$ find the maximum likelihood estimate of $\theta$ and hence show that $\tilde{\theta}$ is also the maximum likelihood estimator.   I have gotten (1) and (2) okay, but it's (3) I am having trouble with, I'd be okay if $X$ and $Y$ had the same parameter but I'm having trouble with $X$ and $Y$ having different parameters, any help would be appreciated.   NOTE   For (1) I got $k_1 = 1 - 2k_2$.   For (2) I found the variance of $\tilde{\theta}$, then differentiated and let equal to zero to minimize - therefore we get (after subbing in $k_2 = 1 - k_1/2 $) $$3k_1-1=0,$$ which when subbing in $1/3$, we see it is minimised.   Thank you. How can I limit ssh *remote* port forwarding? I need to limit which ports can be remotely 'ssh -R' forwarded by an user.  I know about permitopen option on authorized_keys, but as it says on man page it only limits local 'ssh -L' port forwarding  As discussed  a user would get the same with netcat or similar, but in this case user has no shell access  I also found  that talks about using selinux or LD_PRELOAD, but I never configured selinux before and can't find info on how to do that with LD_PRELOAD.  maybe someone have made a patch for openssh to implement that?  EDIT: I've found  so I guess it's not yet implemented In what order should one apply max HP reduction and damage? A character at 10/26 HP is hit by a Wraith and fails the Constitution saving throw. They take 21 damage and their maximum HP is reduced to 5.  Are they unconscious because the 11 excess damage is less than 26 or dead because it's greater than 5? I have a couple of big text files and in the file UNIQS.txt I have a list of strings to grep from another file. The code I use is  grep -f UNIQS.txt EEP_VSL.uniqs.sam &gt; UNIQ_templates.sam   which does nothing - the file generated is empty. But when I do  grep -F -f UNIQS.txt EEP_VSL.uniqs.sam &gt; UNIQ_templates.sam   it works correctly. This confuses me because I didn't think grep would interpret the entries in UNIQS.txt as regexp patterns without quotes and slashes and so on being in the file (which there aren't). Is it the case in general that if you are getting the patterns from a file then it will automatically think that they are regexp patterns?  Edit: In the UNIQS.txt file, there are newline separated strings of the form  HWI-ST365:215:D0GH0ACXX:2:1101:10034:186783   (called template names) and the file EEP_VSL... tab separated columns, with about 14 columns and the first column is the template name, so basically I want to extract the line corresponding to each template in the file. How to install Ubuntu 18.04 alongside Windows 10 What are bitwise shift (bit-shift) operators and how do they work? How to create a "heat distortion" effect with a cycles procedural node set up without compositing I know how to do a heat distortion effect in compositing.   What I am looking for is a way to do the same effect with a material set up in cycles.   What would be the best way to create a procedural material that can be placed in front of any object and make it look like heat is rising in front of it (without compositing)?  Any ideas would be greatly appreciated. Guidelines for customizing biblatex styles less --quit-if-one-screen without --no-init I'm on a terminal that supports the alternate screen which is used by less, vim, etc. to restore the previous display after exiting. That's a nice feature, but it really breaks the --quit-if-one-screen switch of less since in that case less switches to the alternate screen, displays its data, figures out there is only one screen, and exits, taking the contents of the alternate screen with it.  The commonly suggested workaround is using the --no-init switch to avoid using the alternate screen altogether. However, this is somewhat ugly because I do want to use it in case less actually acts as a pager. Therefore I'm looking for a solution to use the alternate screen only if less doesn't terminate automatically.  I'll mostly use this as Git's pager, so a wrapper shell script that only runs less in case there is enough output would be fine, too. At least if there's no way to do it without one. How do I upgrade to a newer version of Ubuntu? I'm writing a sports management simulation game. Like most sport management games, it makes heavy use of statistics. I would like to use real players, teams and league names.  i) Am I running the risk of getting into legal battles if I should use the real names? ii) Also what about team colours and emblems etc?    Update Much thanks for all the input! When I use , the results I get don't reflect recent activity. Sometimes the data I get back are two months out of date. What's wrong? This is intended to be a canonical reference for questions about SEDE not reflecting real-time results. Multiplying by a $1\times 1$ matrix? For matrix multiplication to work, you have to multiply an $m \times n$ matrix by an $n \times p$ matrix, so we have $$\bigg(m \times n\bigg)\bigg(   n\times p \bigg).$$  But what about a $1 \times 1$ matrix? Is this just a scalar? But every matrix can be mulitplied by a scalar; so do $1 \times 1$ matrices break the rule?